From a1f897e9f84ed2003688c8725706714087e061d5 Mon Sep 17 00:00:00 2001 From: Sofia Leon Date: Wed, 10 Jun 2026 18:57:55 +0000 Subject: [PATCH 1/3] feat: update API sources and regenerate --- librarian.yaml | 4 +- .../services/alloy_db_admin/async_client.py | 2 +- .../services/alloy_db_admin/client.py | 2 +- .../cloud/alloydb_v1/types/resources.py | 3 + ...ed_alloy_db_admin_upgrade_cluster_async.py | 2 +- ...ted_alloy_db_admin_upgrade_cluster_sync.py | 2 +- .../google/cloud/ces_v1beta/__init__.py | 30 +- .../cloud/ces_v1beta/gapic_metadata.json | 45 + .../services/agent_service/async_client.py | 2 + .../services/agent_service/client.py | 2 + .../evaluation_service/async_client.py | 411 + .../services/evaluation_service/client.py | 406 + .../evaluation_service/transports/base.py | 42 + .../evaluation_service/transports/grpc.py | 86 + .../transports/grpc_asyncio.py | 104 + .../evaluation_service/transports/rest.py | 749 +- .../transports/rest_base.py | 173 + .../services/tool_service/async_client.py | 9 +- .../services/tool_service/client.py | 9 +- .../google/cloud/ces_v1beta/types/__init__.py | 36 + .../google/cloud/ces_v1beta/types/agent.py | 17 + .../cloud/ces_v1beta/types/agent_card.py | 216 + .../cloud/ces_v1beta/types/agent_service.py | 35 + .../google/cloud/ces_v1beta/types/app.py | 101 +- .../cloud/ces_v1beta/types/conversation.py | 16 +- .../cloud/ces_v1beta/types/deployment.py | 102 + .../cloud/ces_v1beta/types/evaluation.py | 150 +- .../types/evaluation_metrics_config.py | 220 + .../ces_v1beta/types/evaluation_service.py | 125 + .../google/cloud/ces_v1beta/types/mcp_tool.py | 38 + .../cloud/ces_v1beta/types/mcp_toolset.py | 93 +- .../cloud/ces_v1beta/types/python_function.py | 10 + .../cloud/ces_v1beta/types/session_service.py | 7 + .../google/cloud/ces_v1beta/types/tool.py | 22 +- .../cloud/ces_v1beta/types/tool_service.py | 29 +- .../cloud/ces_v1beta/types/widget_tool.py | 61 + ...service_export_evaluation_results_async.py | 58 + ..._service_export_evaluation_results_sync.py | 58 + ...on_service_export_evaluation_runs_async.py | 58 + ...ion_service_export_evaluation_runs_sync.py | 58 + ...ice_run_evaluation_result_metrics_async.py | 57 + ...vice_run_evaluation_result_metrics_sync.py | 57 + ...ppet_metadata_google.cloud.ces.v1beta.json | 499 + .../gapic/ces_v1beta/test_agent_service.py | 358 + .../ces_v1beta/test_evaluation_service.py | 8218 ++- .../gapic/ces_v1beta/test_tool_service.py | 1 + .../confidential_computing/async_client.py | 2 + .../services/confidential_computing/client.py | 22 + .../confidentialcomputing_v1/types/service.py | 8 + .../test_confidential_computing.py | 52 +- .../services/firestore/async_client.py | 4 + .../firestore_v1/services/firestore/client.py | 4 + .../services/firestore/transports/base.py | 1 - .../firestore/transports/grpc_asyncio.py | 1 - .../google/cloud/firestore_v1/types/common.py | 37 +- .../cloud/firestore_v1/types/firestore.py | 12 + .../google/cloud/firestore_v1/types/query.py | 19 +- .../google/cloud/modelarmor/__init__.py | 2 + .../google/cloud/modelarmor_v1/__init__.py | 2 + .../cloud/modelarmor_v1/gapic_metadata.json | 30 + .../services/model_armor/async_client.py | 177 + .../services/model_armor/client.py | 176 + .../services/model_armor/transports/base.py | 34 + .../services/model_armor/transports/grpc.py | 60 + .../model_armor/transports/grpc_asyncio.py | 72 + .../services/model_armor/transports/rest.py | 61 + .../model_armor/transports/rest_base.py | 8 + .../cloud/modelarmor_v1/types/__init__.py | 2 + .../cloud/modelarmor_v1/types/service.py | 50 + ...or_stream_sanitize_model_response_async.py | 68 + ...mor_stream_sanitize_model_response_sync.py | 68 + ...armor_stream_sanitize_user_prompt_async.py | 68 + ..._armor_stream_sanitize_user_prompt_sync.py | 68 + ...t_metadata_google.cloud.modelarmor.v1.json | 306 + .../gapic/modelarmor_v1/test_model_armor.py | 404 + .../google/cloud/oracledatabase/__init__.py | 198 + .../cloud/oracledatabase_v1/__init__.py | 198 + .../oracledatabase_v1/gapic_metadata.json | 345 + .../services/oracle_database/async_client.py | 3264 +- .../services/oracle_database/client.py | 3393 +- .../services/oracle_database/pagers.py | 1226 + .../oracle_database/transports/base.py | 495 + .../oracle_database/transports/grpc.py | 750 + .../transports/grpc_asyncio.py | 1427 +- .../oracle_database/transports/rest.py | 11127 +++- .../oracle_database/transports/rest_base.py | 1739 +- .../cloud/oracledatabase_v1/types/__init__.py | 198 + .../types/autonomous_database.py | 193 +- .../cloud/oracledatabase_v1/types/database.py | 49 +- .../oracledatabase_v1/types/db_system.py | 11 +- .../types/exascale_db_storage_vault.py | 8 + .../types/goldengate_connection.py | 4128 ++ .../types/goldengate_connection_assignment.py | 496 + .../types/goldengate_connection_type.py | 266 + .../types/goldengate_deployment.py | 1270 + .../goldengate_deployment_environment.py | 249 + .../types/goldengate_deployment_type.py | 285 + .../types/goldengate_deployment_version.py | 280 + .../oracledatabase_v1/types/oracledatabase.py | 42 +- .../oracledatabase_v1/types/vm_cluster.py | 4 +- ..._goldengate_connection_assignment_async.py | 69 + ...e_goldengate_connection_assignment_sync.py | 69 + ...base_create_goldengate_connection_async.py | 66 + ...abase_create_goldengate_connection_sync.py | 66 + ...base_create_goldengate_deployment_async.py | 67 + ...abase_create_goldengate_deployment_sync.py | 67 + ..._goldengate_connection_assignment_async.py | 57 + ...e_goldengate_connection_assignment_sync.py | 57 + ...base_delete_goldengate_connection_async.py | 57 + ...abase_delete_goldengate_connection_sync.py | 57 + ...base_delete_goldengate_deployment_async.py | 57 + ...abase_delete_goldengate_deployment_sync.py | 57 + ...base_failover_autonomous_database_async.py | 1 - ...abase_failover_autonomous_database_sync.py | 1 - ..._goldengate_connection_assignment_async.py | 53 + ...t_goldengate_connection_assignment_sync.py | 53 + ...atabase_get_goldengate_connection_async.py | 53 + ...database_get_goldengate_connection_sync.py | 53 + ...se_get_goldengate_connection_type_async.py | 53 + ...ase_get_goldengate_connection_type_sync.py | 53 + ...atabase_get_goldengate_deployment_async.py | 53 + ...goldengate_deployment_environment_async.py | 53 + ..._goldengate_deployment_environment_sync.py | 53 + ...database_get_goldengate_deployment_sync.py | 53 + ...se_get_goldengate_deployment_type_async.py | 53 + ...ase_get_goldengate_deployment_type_sync.py | 53 + ...get_goldengate_deployment_version_async.py | 53 + ..._get_goldengate_deployment_version_sync.py | 53 + ...goldengate_connection_assignments_async.py | 54 + ..._goldengate_connection_assignments_sync.py | 54 + ..._list_goldengate_connection_types_async.py | 54 + ...e_list_goldengate_connection_types_sync.py | 54 + ...abase_list_goldengate_connections_async.py | 54 + ...tabase_list_goldengate_connections_sync.py | 54 + ...oldengate_deployment_environments_async.py | 54 + ...goldengate_deployment_environments_sync.py | 54 + ..._list_goldengate_deployment_types_async.py | 54 + ...e_list_goldengate_deployment_types_sync.py | 54 + ...st_goldengate_deployment_versions_async.py | 54 + ...ist_goldengate_deployment_versions_sync.py | 54 + ...abase_list_goldengate_deployments_async.py | 54 + ...tabase_list_goldengate_deployments_sync.py | 54 + ...abase_start_goldengate_deployment_async.py | 57 + ...tabase_start_goldengate_deployment_sync.py | 57 + ...tabase_stop_goldengate_deployment_async.py | 57 + ...atabase_stop_goldengate_deployment_sync.py | 57 + ...se_switchover_autonomous_database_async.py | 1 - ...ase_switchover_autonomous_database_sync.py | 1 - ..._goldengate_connection_assignment_async.py | 53 + ...t_goldengate_connection_assignment_sync.py | 53 + ...tadata_google.cloud.oracledatabase.v1.json | 6331 ++- .../oracledatabase_v1/test_oracle_database.py | 45053 ++++++++++++---- 152 files changed, 80307 insertions(+), 19901 deletions(-) create mode 100644 packages/google-cloud-ces/google/cloud/ces_v1beta/types/agent_card.py create mode 100644 packages/google-cloud-ces/google/cloud/ces_v1beta/types/evaluation_metrics_config.py create mode 100644 packages/google-cloud-ces/samples/generated_samples/ces_v1beta_generated_evaluation_service_export_evaluation_results_async.py create mode 100644 packages/google-cloud-ces/samples/generated_samples/ces_v1beta_generated_evaluation_service_export_evaluation_results_sync.py create mode 100644 packages/google-cloud-ces/samples/generated_samples/ces_v1beta_generated_evaluation_service_export_evaluation_runs_async.py create mode 100644 packages/google-cloud-ces/samples/generated_samples/ces_v1beta_generated_evaluation_service_export_evaluation_runs_sync.py create mode 100644 packages/google-cloud-ces/samples/generated_samples/ces_v1beta_generated_evaluation_service_run_evaluation_result_metrics_async.py create mode 100644 packages/google-cloud-ces/samples/generated_samples/ces_v1beta_generated_evaluation_service_run_evaluation_result_metrics_sync.py create mode 100644 packages/google-cloud-modelarmor/samples/generated_samples/modelarmor_v1_generated_model_armor_stream_sanitize_model_response_async.py create mode 100644 packages/google-cloud-modelarmor/samples/generated_samples/modelarmor_v1_generated_model_armor_stream_sanitize_model_response_sync.py create mode 100644 packages/google-cloud-modelarmor/samples/generated_samples/modelarmor_v1_generated_model_armor_stream_sanitize_user_prompt_async.py create mode 100644 packages/google-cloud-modelarmor/samples/generated_samples/modelarmor_v1_generated_model_armor_stream_sanitize_user_prompt_sync.py create mode 100644 packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_connection.py create mode 100644 packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_connection_assignment.py create mode 100644 packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_connection_type.py create mode 100644 packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_deployment.py create mode 100644 packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_deployment_environment.py create mode 100644 packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_deployment_type.py create mode 100644 packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_deployment_version.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_create_goldengate_connection_assignment_async.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_create_goldengate_connection_assignment_sync.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_create_goldengate_connection_async.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_create_goldengate_connection_sync.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_create_goldengate_deployment_async.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_create_goldengate_deployment_sync.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_delete_goldengate_connection_assignment_async.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_delete_goldengate_connection_assignment_sync.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_delete_goldengate_connection_async.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_delete_goldengate_connection_sync.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_delete_goldengate_deployment_async.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_delete_goldengate_deployment_sync.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_connection_assignment_async.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_connection_assignment_sync.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_connection_async.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_connection_sync.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_connection_type_async.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_connection_type_sync.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_async.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_environment_async.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_environment_sync.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_sync.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_type_async.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_type_sync.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_version_async.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_version_sync.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_connection_assignments_async.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_connection_assignments_sync.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_connection_types_async.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_connection_types_sync.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_connections_async.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_connections_sync.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_environments_async.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_environments_sync.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_types_async.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_types_sync.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_versions_async.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_versions_sync.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployments_async.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployments_sync.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_start_goldengate_deployment_async.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_start_goldengate_deployment_sync.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_stop_goldengate_deployment_async.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_stop_goldengate_deployment_sync.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_test_goldengate_connection_assignment_async.py create mode 100644 packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_test_goldengate_connection_assignment_sync.py diff --git a/librarian.yaml b/librarian.yaml index 7cc0c054d524..49401db8758e 100644 --- a/librarian.yaml +++ b/librarian.yaml @@ -16,8 +16,8 @@ version: v0.19.0 repo: googleapis/google-cloud-python sources: googleapis: - commit: ff15be54722218705740b9fc6223d264c4cdb6dd - sha256: 13dc3b1a01767be8d486980d3ddcb7fe6f6b89c3da8d41c358d5c2536c86de3c + commit: d8daa97972d091191898915589335cef66fcdc8a + sha256: 7dbdf2b1b667fe57128d41c77e530a2541767772cfe3487713f29b7b25d9f5ad default: output: packages tag_format: '{name}-v{version}' diff --git a/packages/google-cloud-alloydb/google/cloud/alloydb_v1/services/alloy_db_admin/async_client.py b/packages/google-cloud-alloydb/google/cloud/alloydb_v1/services/alloy_db_admin/async_client.py index a4ac623f4067..d69ac8371553 100644 --- a/packages/google-cloud-alloydb/google/cloud/alloydb_v1/services/alloy_db_admin/async_client.py +++ b/packages/google-cloud-alloydb/google/cloud/alloydb_v1/services/alloy_db_admin/async_client.py @@ -1257,7 +1257,7 @@ async def sample_upgrade_cluster(): # Initialize request argument(s) request = alloydb_v1.UpgradeClusterRequest( name="name_value", - version="POSTGRES_17", + version="POSTGRES_18", ) # Make the request diff --git a/packages/google-cloud-alloydb/google/cloud/alloydb_v1/services/alloy_db_admin/client.py b/packages/google-cloud-alloydb/google/cloud/alloydb_v1/services/alloy_db_admin/client.py index 85cef8bbfc33..4438212295a2 100644 --- a/packages/google-cloud-alloydb/google/cloud/alloydb_v1/services/alloy_db_admin/client.py +++ b/packages/google-cloud-alloydb/google/cloud/alloydb_v1/services/alloy_db_admin/client.py @@ -1875,7 +1875,7 @@ def sample_upgrade_cluster(): # Initialize request argument(s) request = alloydb_v1.UpgradeClusterRequest( name="name_value", - version="POSTGRES_17", + version="POSTGRES_18", ) # Make the request diff --git a/packages/google-cloud-alloydb/google/cloud/alloydb_v1/types/resources.py b/packages/google-cloud-alloydb/google/cloud/alloydb_v1/types/resources.py index bad6a904c58b..03dc46f9b812 100644 --- a/packages/google-cloud-alloydb/google/cloud/alloydb_v1/types/resources.py +++ b/packages/google-cloud-alloydb/google/cloud/alloydb_v1/types/resources.py @@ -123,6 +123,8 @@ class DatabaseVersion(proto.Enum): The database version is Postgres 16. POSTGRES_17 (5): The database version is Postgres 17. + POSTGRES_18 (6): + The database version is Postgres 18. """ DATABASE_VERSION_UNSPECIFIED = 0 @@ -131,6 +133,7 @@ class DatabaseVersion(proto.Enum): POSTGRES_15 = 3 POSTGRES_16 = 4 POSTGRES_17 = 5 + POSTGRES_18 = 6 class SubscriptionType(proto.Enum): diff --git a/packages/google-cloud-alloydb/samples/generated_samples/alloydb_v1_generated_alloy_db_admin_upgrade_cluster_async.py b/packages/google-cloud-alloydb/samples/generated_samples/alloydb_v1_generated_alloy_db_admin_upgrade_cluster_async.py index 468e489cb04a..8807ad7a3861 100644 --- a/packages/google-cloud-alloydb/samples/generated_samples/alloydb_v1_generated_alloy_db_admin_upgrade_cluster_async.py +++ b/packages/google-cloud-alloydb/samples/generated_samples/alloydb_v1_generated_alloy_db_admin_upgrade_cluster_async.py @@ -41,7 +41,7 @@ async def sample_upgrade_cluster(): # Initialize request argument(s) request = alloydb_v1.UpgradeClusterRequest( name="name_value", - version="POSTGRES_17", + version="POSTGRES_18", ) # Make the request diff --git a/packages/google-cloud-alloydb/samples/generated_samples/alloydb_v1_generated_alloy_db_admin_upgrade_cluster_sync.py b/packages/google-cloud-alloydb/samples/generated_samples/alloydb_v1_generated_alloy_db_admin_upgrade_cluster_sync.py index a0785cb953e1..8bbdc785cc4e 100644 --- a/packages/google-cloud-alloydb/samples/generated_samples/alloydb_v1_generated_alloy_db_admin_upgrade_cluster_sync.py +++ b/packages/google-cloud-alloydb/samples/generated_samples/alloydb_v1_generated_alloy_db_admin_upgrade_cluster_sync.py @@ -41,7 +41,7 @@ def sample_upgrade_cluster(): # Initialize request argument(s) request = alloydb_v1.UpgradeClusterRequest( name="name_value", - version="POSTGRES_17", + version="POSTGRES_18", ) # Make the request diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/__init__.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/__init__.py index e4c758a90649..481866dfbb65 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/__init__.py +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/__init__.py @@ -32,6 +32,7 @@ from .services.tool_service import ToolServiceAsyncClient, ToolServiceClient from .services.widget_service import WidgetServiceAsyncClient, WidgetServiceClient from .types.agent import Agent +from .types.agent_card import AgentCard, AgentInterface, AgentSkill, RemoteAgentTool from .types.agent_service import ( BatchDeleteConversationsRequest, BatchDeleteConversationsResponse, @@ -129,6 +130,7 @@ RedactionConfig, SynthesizeSpeechConfig, TimeZoneSettings, + VpcScSettings, ) from .types.app_version import AppSnapshot, AppVersion from .types.auth import ( @@ -158,7 +160,7 @@ from .types.conversation import Conversation from .types.data_store import DataStore from .types.data_store_tool import DataStoreTool -from .types.deployment import Deployment +from .types.deployment import Deployment, ExperimentConfig from .types.evaluation import ( AggregatedMetrics, Evaluation, @@ -174,6 +176,7 @@ RunEvaluationRequest, ScheduledEvaluationRun, ) +from .types.evaluation_metrics_config import EvaluationMetricsConfig from .types.evaluation_service import ( CreateEvaluationDatasetRequest, CreateEvaluationExpectationRequest, @@ -186,7 +189,11 @@ DeleteEvaluationRunOperationMetadata, DeleteEvaluationRunRequest, DeleteScheduledEvaluationRunRequest, + ExportEvaluationResultsOperationMetadata, + ExportEvaluationResultsRequest, ExportEvaluationResultsResponse, + ExportEvaluationRunsOperationMetadata, + ExportEvaluationRunsRequest, ExportEvaluationRunsResponse, ExportEvaluationsRequest, ExportEvaluationsResponse, @@ -216,6 +223,9 @@ ListScheduledEvaluationRunsResponse, RunEvaluationOperationMetadata, RunEvaluationResponse, + RunEvaluationResultMetricsOperationMetadata, + RunEvaluationResultMetricsRequest, + RunEvaluationResultMetricsResponse, TestPersonaVoiceRequest, TestPersonaVoiceResponse, UpdateEvaluationDatasetRequest, @@ -242,7 +252,7 @@ from .types.google_search_tool import GoogleSearchTool from .types.guardrail import Guardrail from .types.mcp_tool import McpTool -from .types.mcp_toolset import McpToolset +from .types.mcp_toolset import McpToolDefinition, McpToolOverride, McpToolset from .types.mocks import MockedToolCall from .types.omnichannel import Omnichannel, OmnichannelIntegrationConfig from .types.omnichannel_service import OmnichannelOperationMetadata @@ -379,7 +389,10 @@ def _get_version(dependency_name): "WidgetServiceAsyncClient", "Action", "Agent", + "AgentCard", + "AgentInterface", "AgentServiceClient", + "AgentSkill", "AgentTool", "AgentTransfer", "AggregatedMetrics", @@ -454,6 +467,7 @@ def _get_version(dependency_name): "EvaluationDataset", "EvaluationErrorInfo", "EvaluationExpectation", + "EvaluationMetricsConfig", "EvaluationMetricsThresholds", "EvaluationPersona", "EvaluationResult", @@ -466,9 +480,14 @@ def _get_version(dependency_name): "ExecuteToolRequest", "ExecuteToolResponse", "ExecutionType", + "ExperimentConfig", "ExportAppRequest", "ExportAppResponse", + "ExportEvaluationResultsOperationMetadata", + "ExportEvaluationResultsRequest", "ExportEvaluationResultsResponse", + "ExportEvaluationRunsOperationMetadata", + "ExportEvaluationRunsRequest", "ExportEvaluationRunsResponse", "ExportEvaluationsRequest", "ExportEvaluationsResponse", @@ -549,6 +568,8 @@ def _get_version(dependency_name): "ListToolsetsResponse", "LoggingSettings", "McpTool", + "McpToolDefinition", + "McpToolOverride", "McpToolset", "Message", "MetricAnalysisSettings", @@ -570,6 +591,7 @@ def _get_version(dependency_name): "QualityReport", "RecognitionResult", "RedactionConfig", + "RemoteAgentTool", "RestoreAppVersionRequest", "RestoreAppVersionResponse", "RetrieveToolSchemaRequest", @@ -579,6 +601,9 @@ def _get_version(dependency_name): "RunEvaluationOperationMetadata", "RunEvaluationRequest", "RunEvaluationResponse", + "RunEvaluationResultMetricsOperationMetadata", + "RunEvaluationResultMetricsRequest", + "RunEvaluationResultMetricsResponse", "RunSessionRequest", "RunSessionResponse", "ScheduledEvaluationRun", @@ -623,6 +648,7 @@ def _get_version(dependency_name): "UpdateToolsetRequest", "UploadEvaluationAudioRequest", "UploadEvaluationAudioResponse", + "VpcScSettings", "WebSearchQuery", "WidgetServiceClient", "WidgetTool", diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/gapic_metadata.json b/packages/google-cloud-ces/google/cloud/ces_v1beta/gapic_metadata.json index dafb8cabd826..3087689d4deb 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/gapic_metadata.json +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/gapic_metadata.json @@ -844,6 +844,16 @@ "delete_scheduled_evaluation_run" ] }, + "ExportEvaluationResults": { + "methods": [ + "export_evaluation_results" + ] + }, + "ExportEvaluationRuns": { + "methods": [ + "export_evaluation_runs" + ] + }, "ExportEvaluations": { "methods": [ "export_evaluations" @@ -924,6 +934,11 @@ "run_evaluation" ] }, + "RunEvaluationResultMetrics": { + "methods": [ + "run_evaluation_result_metrics" + ] + }, "TestPersonaVoice": { "methods": [ "test_persona_voice" @@ -1009,6 +1024,16 @@ "delete_scheduled_evaluation_run" ] }, + "ExportEvaluationResults": { + "methods": [ + "export_evaluation_results" + ] + }, + "ExportEvaluationRuns": { + "methods": [ + "export_evaluation_runs" + ] + }, "ExportEvaluations": { "methods": [ "export_evaluations" @@ -1089,6 +1114,11 @@ "run_evaluation" ] }, + "RunEvaluationResultMetrics": { + "methods": [ + "run_evaluation_result_metrics" + ] + }, "TestPersonaVoice": { "methods": [ "test_persona_voice" @@ -1174,6 +1204,16 @@ "delete_scheduled_evaluation_run" ] }, + "ExportEvaluationResults": { + "methods": [ + "export_evaluation_results" + ] + }, + "ExportEvaluationRuns": { + "methods": [ + "export_evaluation_runs" + ] + }, "ExportEvaluations": { "methods": [ "export_evaluations" @@ -1254,6 +1294,11 @@ "run_evaluation" ] }, + "RunEvaluationResultMetrics": { + "methods": [ + "run_evaluation_result_metrics" + ] + }, "TestPersonaVoice": { "methods": [ "test_persona_voice" diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/services/agent_service/async_client.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/services/agent_service/async_client.py index a50189f0b3eb..e6c75d744c9a 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/services/agent_service/async_client.py +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/services/agent_service/async_client.py @@ -46,6 +46,7 @@ import google.api_core.operation as operation # type: ignore import google.api_core.operation_async as operation_async # type: ignore +import google.protobuf.duration_pb2 as duration_pb2 # type: ignore import google.protobuf.empty_pb2 as empty_pb2 # type: ignore import google.protobuf.field_mask_pb2 as field_mask_pb2 # type: ignore import google.protobuf.struct_pb2 as struct_pb2 # type: ignore @@ -56,6 +57,7 @@ from google.cloud.ces_v1beta.services.agent_service import pagers from google.cloud.ces_v1beta.types import ( agent, + agent_card, agent_service, agent_tool, agent_transfers, diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/services/agent_service/client.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/services/agent_service/client.py index 150f45cf8a5b..f597780f2eb3 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/services/agent_service/client.py +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/services/agent_service/client.py @@ -63,6 +63,7 @@ import google.api_core.operation as operation # type: ignore import google.api_core.operation_async as operation_async # type: ignore +import google.protobuf.duration_pb2 as duration_pb2 # type: ignore import google.protobuf.empty_pb2 as empty_pb2 # type: ignore import google.protobuf.field_mask_pb2 as field_mask_pb2 # type: ignore import google.protobuf.struct_pb2 as struct_pb2 # type: ignore @@ -73,6 +74,7 @@ from google.cloud.ces_v1beta.services.agent_service import pagers from google.cloud.ces_v1beta.types import ( agent, + agent_card, agent_service, agent_tool, agent_transfers, diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/async_client.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/async_client.py index 12ef7b4bae63..01b63e1822eb 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/async_client.py +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/async_client.py @@ -59,6 +59,7 @@ agent_service, app, evaluation, + evaluation_metrics_config, evaluation_service, golden_run, ) @@ -4338,6 +4339,416 @@ async def sample_export_evaluations(): # Done; return the response. return response + async def export_evaluation_runs( + self, + request: Optional[ + Union[evaluation_service.ExportEvaluationRunsRequest, dict] + ] = None, + *, + parent: Optional[str] = None, + names: Optional[MutableSequence[str]] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operation_async.AsyncOperation: + r"""Exports evaluations runs. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import ces_v1beta + + async def sample_export_evaluation_runs(): + # Create a client + client = ces_v1beta.EvaluationServiceAsyncClient() + + # Initialize request argument(s) + request = ces_v1beta.ExportEvaluationRunsRequest( + parent="parent_value", + names=['names_value1', 'names_value2'], + ) + + # Make the request + operation = await client.export_evaluation_runs(request=request) + + print("Waiting for operation to complete...") + + response = await operation.result() + + # Handle the response + print(response) + + Args: + request (Optional[Union[google.cloud.ces_v1beta.types.ExportEvaluationRunsRequest, dict]]): + The request object. Request message for + [EvaluationService.ExportEvaluationRuns][google.cloud.ces.v1beta.EvaluationService.ExportEvaluationRuns]. + parent (:class:`str`): + Required. The resource name of the app to export + evaluation runs from. Format: + ``projects/{project}/locations/{location}/apps/{app}`` + + This corresponds to the ``parent`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + names (:class:`MutableSequence[str]`): + Required. The resource names of the + evaluation runs to export. + + This corresponds to the ``names`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.api_core.operation_async.AsyncOperation: + An object representing a long-running operation. + + The result type for the operation will be :class:`google.cloud.ces_v1beta.types.ExportEvaluationRunsResponse` Response message for + [EvaluationService.ExportEvaluationRuns][google.cloud.ces.v1beta.EvaluationService.ExportEvaluationRuns]. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [parent, names] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance(request, evaluation_service.ExportEvaluationRunsRequest): + request = evaluation_service.ExportEvaluationRunsRequest(request) + + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if parent is not None: + request.parent = parent + if names: + request.names.extend(names) + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.export_evaluation_runs + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)), + ) + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = await rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Wrap the response in an operation future. + response = operation_async.from_gapic( + response, + self._client._transport.operations_client, + evaluation_service.ExportEvaluationRunsResponse, + metadata_type=evaluation_service.ExportEvaluationRunsOperationMetadata, + ) + + # Done; return the response. + return response + + async def export_evaluation_results( + self, + request: Optional[ + Union[evaluation_service.ExportEvaluationResultsRequest, dict] + ] = None, + *, + parent: Optional[str] = None, + names: Optional[MutableSequence[str]] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operation_async.AsyncOperation: + r"""Exports evaluations results. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import ces_v1beta + + async def sample_export_evaluation_results(): + # Create a client + client = ces_v1beta.EvaluationServiceAsyncClient() + + # Initialize request argument(s) + request = ces_v1beta.ExportEvaluationResultsRequest( + parent="parent_value", + names=['names_value1', 'names_value2'], + ) + + # Make the request + operation = await client.export_evaluation_results(request=request) + + print("Waiting for operation to complete...") + + response = await operation.result() + + # Handle the response + print(response) + + Args: + request (Optional[Union[google.cloud.ces_v1beta.types.ExportEvaluationResultsRequest, dict]]): + The request object. Request message for + [EvaluationService.ExportEvaluationResults][google.cloud.ces.v1beta.EvaluationService.ExportEvaluationResults]. + parent (:class:`str`): + Required. The resource name of the evaluation to export + evaluation results from. Format: + ``projects/{project}/locations/{location}/apps/{app}/evaluations/{evaluation}`` + + This corresponds to the ``parent`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + names (:class:`MutableSequence[str]`): + Required. The resource names of the + evaluation results to export. + + This corresponds to the ``names`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.api_core.operation_async.AsyncOperation: + An object representing a long-running operation. + + The result type for the operation will be :class:`google.cloud.ces_v1beta.types.ExportEvaluationResultsResponse` Response message for + [EvaluationService.ExportEvaluationResults][google.cloud.ces.v1beta.EvaluationService.ExportEvaluationResults]. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [parent, names] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance(request, evaluation_service.ExportEvaluationResultsRequest): + request = evaluation_service.ExportEvaluationResultsRequest(request) + + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if parent is not None: + request.parent = parent + if names: + request.names.extend(names) + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.export_evaluation_results + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)), + ) + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = await rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Wrap the response in an operation future. + response = operation_async.from_gapic( + response, + self._client._transport.operations_client, + evaluation_service.ExportEvaluationResultsResponse, + metadata_type=evaluation_service.ExportEvaluationResultsOperationMetadata, + ) + + # Done; return the response. + return response + + async def run_evaluation_result_metrics( + self, + request: Optional[ + Union[evaluation_service.RunEvaluationResultMetricsRequest, dict] + ] = None, + *, + evaluation_result_id: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operation_async.AsyncOperation: + r"""Runs metrics on an existing evaluation result. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import ces_v1beta + + async def sample_run_evaluation_result_metrics(): + # Create a client + client = ces_v1beta.EvaluationServiceAsyncClient() + + # Initialize request argument(s) + request = ces_v1beta.RunEvaluationResultMetricsRequest( + evaluation_result_id="evaluation_result_id_value", + ) + + # Make the request + operation = await client.run_evaluation_result_metrics(request=request) + + print("Waiting for operation to complete...") + + response = await operation.result() + + # Handle the response + print(response) + + Args: + request (Optional[Union[google.cloud.ces_v1beta.types.RunEvaluationResultMetricsRequest, dict]]): + The request object. Request message for + [EvaluationService.RunEvaluationResultMetrics][google.cloud.ces.v1beta.EvaluationService.RunEvaluationResultMetrics]. + evaluation_result_id (:class:`str`): + Required. The evaluation result to run metrics for. + Format: + ``projects/{project}/locations/{location}/apps/{app}/evaluations/{evaluation}/results/{evaluation_result_id}`` + + This corresponds to the ``evaluation_result_id`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.api_core.operation_async.AsyncOperation: + An object representing a long-running operation. + + The result type for the operation will be :class:`google.cloud.ces_v1beta.types.RunEvaluationResultMetricsResponse` Response message for + [EvaluationService.RunEvaluationResultMetrics][google.cloud.ces.v1beta.EvaluationService.RunEvaluationResultMetrics]. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [evaluation_result_id] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, evaluation_service.RunEvaluationResultMetricsRequest + ): + request = evaluation_service.RunEvaluationResultMetricsRequest(request) + + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if evaluation_result_id is not None: + request.evaluation_result_id = evaluation_result_id + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.run_evaluation_result_metrics + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata( + (("evaluation_result_id", request.evaluation_result_id),) + ), + ) + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = await rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Wrap the response in an operation future. + response = operation_async.from_gapic( + response, + self._client._transport.operations_client, + evaluation_service.RunEvaluationResultMetricsResponse, + metadata_type=evaluation_service.RunEvaluationResultMetricsOperationMetadata, + ) + + # Done; return the response. + return response + async def list_operations( self, request: Optional[Union[operations_pb2.ListOperationsRequest, dict]] = None, diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/client.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/client.py index 5970277fcce8..dfd9aa0e4880 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/client.py +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/client.py @@ -76,6 +76,7 @@ agent_service, app, evaluation, + evaluation_metrics_config, evaluation_service, golden_run, ) @@ -4971,6 +4972,411 @@ def sample_export_evaluations(): # Done; return the response. return response + def export_evaluation_runs( + self, + request: Optional[ + Union[evaluation_service.ExportEvaluationRunsRequest, dict] + ] = None, + *, + parent: Optional[str] = None, + names: Optional[MutableSequence[str]] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operation.Operation: + r"""Exports evaluations runs. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import ces_v1beta + + def sample_export_evaluation_runs(): + # Create a client + client = ces_v1beta.EvaluationServiceClient() + + # Initialize request argument(s) + request = ces_v1beta.ExportEvaluationRunsRequest( + parent="parent_value", + names=['names_value1', 'names_value2'], + ) + + # Make the request + operation = client.export_evaluation_runs(request=request) + + print("Waiting for operation to complete...") + + response = operation.result() + + # Handle the response + print(response) + + Args: + request (Union[google.cloud.ces_v1beta.types.ExportEvaluationRunsRequest, dict]): + The request object. Request message for + [EvaluationService.ExportEvaluationRuns][google.cloud.ces.v1beta.EvaluationService.ExportEvaluationRuns]. + parent (str): + Required. The resource name of the app to export + evaluation runs from. Format: + ``projects/{project}/locations/{location}/apps/{app}`` + + This corresponds to the ``parent`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + names (MutableSequence[str]): + Required. The resource names of the + evaluation runs to export. + + This corresponds to the ``names`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.api_core.operation.Operation: + An object representing a long-running operation. + + The result type for the operation will be :class:`google.cloud.ces_v1beta.types.ExportEvaluationRunsResponse` Response message for + [EvaluationService.ExportEvaluationRuns][google.cloud.ces.v1beta.EvaluationService.ExportEvaluationRuns]. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [parent, names] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance(request, evaluation_service.ExportEvaluationRunsRequest): + request = evaluation_service.ExportEvaluationRunsRequest(request) + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if parent is not None: + request.parent = parent + if names is not None: + request.names = names + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[self._transport.export_evaluation_runs] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)), + ) + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Wrap the response in an operation future. + response = operation.from_gapic( + response, + self._transport.operations_client, + evaluation_service.ExportEvaluationRunsResponse, + metadata_type=evaluation_service.ExportEvaluationRunsOperationMetadata, + ) + + # Done; return the response. + return response + + def export_evaluation_results( + self, + request: Optional[ + Union[evaluation_service.ExportEvaluationResultsRequest, dict] + ] = None, + *, + parent: Optional[str] = None, + names: Optional[MutableSequence[str]] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operation.Operation: + r"""Exports evaluations results. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import ces_v1beta + + def sample_export_evaluation_results(): + # Create a client + client = ces_v1beta.EvaluationServiceClient() + + # Initialize request argument(s) + request = ces_v1beta.ExportEvaluationResultsRequest( + parent="parent_value", + names=['names_value1', 'names_value2'], + ) + + # Make the request + operation = client.export_evaluation_results(request=request) + + print("Waiting for operation to complete...") + + response = operation.result() + + # Handle the response + print(response) + + Args: + request (Union[google.cloud.ces_v1beta.types.ExportEvaluationResultsRequest, dict]): + The request object. Request message for + [EvaluationService.ExportEvaluationResults][google.cloud.ces.v1beta.EvaluationService.ExportEvaluationResults]. + parent (str): + Required. The resource name of the evaluation to export + evaluation results from. Format: + ``projects/{project}/locations/{location}/apps/{app}/evaluations/{evaluation}`` + + This corresponds to the ``parent`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + names (MutableSequence[str]): + Required. The resource names of the + evaluation results to export. + + This corresponds to the ``names`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.api_core.operation.Operation: + An object representing a long-running operation. + + The result type for the operation will be :class:`google.cloud.ces_v1beta.types.ExportEvaluationResultsResponse` Response message for + [EvaluationService.ExportEvaluationResults][google.cloud.ces.v1beta.EvaluationService.ExportEvaluationResults]. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [parent, names] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance(request, evaluation_service.ExportEvaluationResultsRequest): + request = evaluation_service.ExportEvaluationResultsRequest(request) + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if parent is not None: + request.parent = parent + if names is not None: + request.names = names + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[ + self._transport.export_evaluation_results + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)), + ) + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Wrap the response in an operation future. + response = operation.from_gapic( + response, + self._transport.operations_client, + evaluation_service.ExportEvaluationResultsResponse, + metadata_type=evaluation_service.ExportEvaluationResultsOperationMetadata, + ) + + # Done; return the response. + return response + + def run_evaluation_result_metrics( + self, + request: Optional[ + Union[evaluation_service.RunEvaluationResultMetricsRequest, dict] + ] = None, + *, + evaluation_result_id: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operation.Operation: + r"""Runs metrics on an existing evaluation result. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import ces_v1beta + + def sample_run_evaluation_result_metrics(): + # Create a client + client = ces_v1beta.EvaluationServiceClient() + + # Initialize request argument(s) + request = ces_v1beta.RunEvaluationResultMetricsRequest( + evaluation_result_id="evaluation_result_id_value", + ) + + # Make the request + operation = client.run_evaluation_result_metrics(request=request) + + print("Waiting for operation to complete...") + + response = operation.result() + + # Handle the response + print(response) + + Args: + request (Union[google.cloud.ces_v1beta.types.RunEvaluationResultMetricsRequest, dict]): + The request object. Request message for + [EvaluationService.RunEvaluationResultMetrics][google.cloud.ces.v1beta.EvaluationService.RunEvaluationResultMetrics]. + evaluation_result_id (str): + Required. The evaluation result to run metrics for. + Format: + ``projects/{project}/locations/{location}/apps/{app}/evaluations/{evaluation}/results/{evaluation_result_id}`` + + This corresponds to the ``evaluation_result_id`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.api_core.operation.Operation: + An object representing a long-running operation. + + The result type for the operation will be :class:`google.cloud.ces_v1beta.types.RunEvaluationResultMetricsResponse` Response message for + [EvaluationService.RunEvaluationResultMetrics][google.cloud.ces.v1beta.EvaluationService.RunEvaluationResultMetrics]. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [evaluation_result_id] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, evaluation_service.RunEvaluationResultMetricsRequest + ): + request = evaluation_service.RunEvaluationResultMetricsRequest(request) + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if evaluation_result_id is not None: + request.evaluation_result_id = evaluation_result_id + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[ + self._transport.run_evaluation_result_metrics + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata( + (("evaluation_result_id", request.evaluation_result_id),) + ), + ) + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Wrap the response in an operation future. + response = operation.from_gapic( + response, + self._transport.operations_client, + evaluation_service.RunEvaluationResultMetricsResponse, + metadata_type=evaluation_service.RunEvaluationResultMetricsOperationMetadata, + ) + + # Done; return the response. + return response + def __enter__(self) -> "EvaluationServiceClient": return self diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/transports/base.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/transports/base.py index ffe680dd2321..36d84279a696 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/transports/base.py +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/transports/base.py @@ -309,6 +309,21 @@ def _prep_wrapped_messages(self, client_info): default_timeout=None, client_info=client_info, ), + self.export_evaluation_runs: gapic_v1.method.wrap_method( + self.export_evaluation_runs, + default_timeout=None, + client_info=client_info, + ), + self.export_evaluation_results: gapic_v1.method.wrap_method( + self.export_evaluation_results, + default_timeout=None, + client_info=client_info, + ), + self.run_evaluation_result_metrics: gapic_v1.method.wrap_method( + self.run_evaluation_result_metrics, + default_timeout=None, + client_info=client_info, + ), self.get_location: gapic_v1.method.wrap_method( self.get_location, default_timeout=None, @@ -685,6 +700,33 @@ def export_evaluations( ]: raise NotImplementedError() + @property + def export_evaluation_runs( + self, + ) -> Callable[ + [evaluation_service.ExportEvaluationRunsRequest], + Union[operations_pb2.Operation, Awaitable[operations_pb2.Operation]], + ]: + raise NotImplementedError() + + @property + def export_evaluation_results( + self, + ) -> Callable[ + [evaluation_service.ExportEvaluationResultsRequest], + Union[operations_pb2.Operation, Awaitable[operations_pb2.Operation]], + ]: + raise NotImplementedError() + + @property + def run_evaluation_result_metrics( + self, + ) -> Callable[ + [evaluation_service.RunEvaluationResultMetricsRequest], + Union[operations_pb2.Operation, Awaitable[operations_pb2.Operation]], + ]: + raise NotImplementedError() + @property def list_operations( self, diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/transports/grpc.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/transports/grpc.py index 5c44ba90da45..43bc1f08eaca 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/transports/grpc.py +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/transports/grpc.py @@ -1277,6 +1277,92 @@ def export_evaluations( ) return self._stubs["export_evaluations"] + @property + def export_evaluation_runs( + self, + ) -> Callable[ + [evaluation_service.ExportEvaluationRunsRequest], operations_pb2.Operation + ]: + r"""Return a callable for the export evaluation runs method over gRPC. + + Exports evaluations runs. + + Returns: + Callable[[~.ExportEvaluationRunsRequest], + ~.Operation]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "export_evaluation_runs" not in self._stubs: + self._stubs["export_evaluation_runs"] = self._logged_channel.unary_unary( + "/google.cloud.ces.v1beta.EvaluationService/ExportEvaluationRuns", + request_serializer=evaluation_service.ExportEvaluationRunsRequest.serialize, + response_deserializer=operations_pb2.Operation.FromString, + ) + return self._stubs["export_evaluation_runs"] + + @property + def export_evaluation_results( + self, + ) -> Callable[ + [evaluation_service.ExportEvaluationResultsRequest], operations_pb2.Operation + ]: + r"""Return a callable for the export evaluation results method over gRPC. + + Exports evaluations results. + + Returns: + Callable[[~.ExportEvaluationResultsRequest], + ~.Operation]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "export_evaluation_results" not in self._stubs: + self._stubs["export_evaluation_results"] = self._logged_channel.unary_unary( + "/google.cloud.ces.v1beta.EvaluationService/ExportEvaluationResults", + request_serializer=evaluation_service.ExportEvaluationResultsRequest.serialize, + response_deserializer=operations_pb2.Operation.FromString, + ) + return self._stubs["export_evaluation_results"] + + @property + def run_evaluation_result_metrics( + self, + ) -> Callable[ + [evaluation_service.RunEvaluationResultMetricsRequest], operations_pb2.Operation + ]: + r"""Return a callable for the run evaluation result metrics method over gRPC. + + Runs metrics on an existing evaluation result. + + Returns: + Callable[[~.RunEvaluationResultMetricsRequest], + ~.Operation]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "run_evaluation_result_metrics" not in self._stubs: + self._stubs["run_evaluation_result_metrics"] = ( + self._logged_channel.unary_unary( + "/google.cloud.ces.v1beta.EvaluationService/RunEvaluationResultMetrics", + request_serializer=evaluation_service.RunEvaluationResultMetricsRequest.serialize, + response_deserializer=operations_pb2.Operation.FromString, + ) + ) + return self._stubs["run_evaluation_result_metrics"] + def close(self): self._logged_channel.close() diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/transports/grpc_asyncio.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/transports/grpc_asyncio.py index f8a3eea12bb8..d7c9e17078c5 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/transports/grpc_asyncio.py +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/transports/grpc_asyncio.py @@ -1306,6 +1306,95 @@ def export_evaluations( ) return self._stubs["export_evaluations"] + @property + def export_evaluation_runs( + self, + ) -> Callable[ + [evaluation_service.ExportEvaluationRunsRequest], + Awaitable[operations_pb2.Operation], + ]: + r"""Return a callable for the export evaluation runs method over gRPC. + + Exports evaluations runs. + + Returns: + Callable[[~.ExportEvaluationRunsRequest], + Awaitable[~.Operation]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "export_evaluation_runs" not in self._stubs: + self._stubs["export_evaluation_runs"] = self._logged_channel.unary_unary( + "/google.cloud.ces.v1beta.EvaluationService/ExportEvaluationRuns", + request_serializer=evaluation_service.ExportEvaluationRunsRequest.serialize, + response_deserializer=operations_pb2.Operation.FromString, + ) + return self._stubs["export_evaluation_runs"] + + @property + def export_evaluation_results( + self, + ) -> Callable[ + [evaluation_service.ExportEvaluationResultsRequest], + Awaitable[operations_pb2.Operation], + ]: + r"""Return a callable for the export evaluation results method over gRPC. + + Exports evaluations results. + + Returns: + Callable[[~.ExportEvaluationResultsRequest], + Awaitable[~.Operation]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "export_evaluation_results" not in self._stubs: + self._stubs["export_evaluation_results"] = self._logged_channel.unary_unary( + "/google.cloud.ces.v1beta.EvaluationService/ExportEvaluationResults", + request_serializer=evaluation_service.ExportEvaluationResultsRequest.serialize, + response_deserializer=operations_pb2.Operation.FromString, + ) + return self._stubs["export_evaluation_results"] + + @property + def run_evaluation_result_metrics( + self, + ) -> Callable[ + [evaluation_service.RunEvaluationResultMetricsRequest], + Awaitable[operations_pb2.Operation], + ]: + r"""Return a callable for the run evaluation result metrics method over gRPC. + + Runs metrics on an existing evaluation result. + + Returns: + Callable[[~.RunEvaluationResultMetricsRequest], + Awaitable[~.Operation]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "run_evaluation_result_metrics" not in self._stubs: + self._stubs["run_evaluation_result_metrics"] = ( + self._logged_channel.unary_unary( + "/google.cloud.ces.v1beta.EvaluationService/RunEvaluationResultMetrics", + request_serializer=evaluation_service.RunEvaluationResultMetricsRequest.serialize, + response_deserializer=operations_pb2.Operation.FromString, + ) + ) + return self._stubs["run_evaluation_result_metrics"] + def _prep_wrapped_messages(self, client_info): """Precompute the wrapped methods, overriding the base class method to use async wrappers.""" self._wrapped_methods = { @@ -1469,6 +1558,21 @@ def _prep_wrapped_messages(self, client_info): default_timeout=None, client_info=client_info, ), + self.export_evaluation_runs: self._wrap_method( + self.export_evaluation_runs, + default_timeout=None, + client_info=client_info, + ), + self.export_evaluation_results: self._wrap_method( + self.export_evaluation_results, + default_timeout=None, + client_info=client_info, + ), + self.run_evaluation_result_metrics: self._wrap_method( + self.run_evaluation_result_metrics, + default_timeout=None, + client_info=client_info, + ), self.get_location: self._wrap_method( self.get_location, default_timeout=None, diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/transports/rest.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/transports/rest.py index c0d10bfd75cb..11f9cbdd0b05 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/transports/rest.py +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/transports/rest.py @@ -136,6 +136,22 @@ def pre_delete_scheduled_evaluation_run(self, request, metadata): logging.log(f"Received request: {request}") return request, metadata + def pre_export_evaluation_results(self, request, metadata): + logging.log(f"Received request: {request}") + return request, metadata + + def post_export_evaluation_results(self, response): + logging.log(f"Received response: {response}") + return response + + def pre_export_evaluation_runs(self, request, metadata): + logging.log(f"Received request: {request}") + return request, metadata + + def post_export_evaluation_runs(self, response): + logging.log(f"Received response: {response}") + return response + def pre_export_evaluations(self, request, metadata): logging.log(f"Received request: {request}") return request, metadata @@ -264,6 +280,14 @@ def post_run_evaluation(self, response): logging.log(f"Received response: {response}") return response + def pre_run_evaluation_result_metrics(self, request, metadata): + logging.log(f"Received request: {request}") + return request, metadata + + def post_run_evaluation_result_metrics(self, response): + logging.log(f"Received response: {response}") + return response + def pre_test_persona_voice(self, request, metadata): logging.log(f"Received request: {request}") return request, metadata @@ -642,6 +666,104 @@ def pre_delete_scheduled_evaluation_run( """ return request, metadata + def pre_export_evaluation_results( + self, + request: evaluation_service.ExportEvaluationResultsRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + evaluation_service.ExportEvaluationResultsRequest, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Pre-rpc interceptor for export_evaluation_results + + Override in a subclass to manipulate the request or metadata + before they are sent to the EvaluationService server. + """ + return request, metadata + + def post_export_evaluation_results( + self, response: operations_pb2.Operation + ) -> operations_pb2.Operation: + """Post-rpc interceptor for export_evaluation_results + + DEPRECATED. Please use the `post_export_evaluation_results_with_metadata` + interceptor instead. + + Override in a subclass to read or manipulate the response + after it is returned by the EvaluationService server but before + it is returned to user code. This `post_export_evaluation_results` interceptor runs + before the `post_export_evaluation_results_with_metadata` interceptor. + """ + return response + + def post_export_evaluation_results_with_metadata( + self, + response: operations_pb2.Operation, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: + """Post-rpc interceptor for export_evaluation_results + + Override in a subclass to read or manipulate the response or metadata after it + is returned by the EvaluationService server but before it is returned to user code. + + We recommend only using this `post_export_evaluation_results_with_metadata` + interceptor in new development instead of the `post_export_evaluation_results` interceptor. + When both interceptors are used, this `post_export_evaluation_results_with_metadata` interceptor runs after the + `post_export_evaluation_results` interceptor. The (possibly modified) response returned by + `post_export_evaluation_results` will be passed to + `post_export_evaluation_results_with_metadata`. + """ + return response, metadata + + def pre_export_evaluation_runs( + self, + request: evaluation_service.ExportEvaluationRunsRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + evaluation_service.ExportEvaluationRunsRequest, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Pre-rpc interceptor for export_evaluation_runs + + Override in a subclass to manipulate the request or metadata + before they are sent to the EvaluationService server. + """ + return request, metadata + + def post_export_evaluation_runs( + self, response: operations_pb2.Operation + ) -> operations_pb2.Operation: + """Post-rpc interceptor for export_evaluation_runs + + DEPRECATED. Please use the `post_export_evaluation_runs_with_metadata` + interceptor instead. + + Override in a subclass to read or manipulate the response + after it is returned by the EvaluationService server but before + it is returned to user code. This `post_export_evaluation_runs` interceptor runs + before the `post_export_evaluation_runs_with_metadata` interceptor. + """ + return response + + def post_export_evaluation_runs_with_metadata( + self, + response: operations_pb2.Operation, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: + """Post-rpc interceptor for export_evaluation_runs + + Override in a subclass to read or manipulate the response or metadata after it + is returned by the EvaluationService server but before it is returned to user code. + + We recommend only using this `post_export_evaluation_runs_with_metadata` + interceptor in new development instead of the `post_export_evaluation_runs` interceptor. + When both interceptors are used, this `post_export_evaluation_runs_with_metadata` interceptor runs after the + `post_export_evaluation_runs` interceptor. The (possibly modified) response returned by + `post_export_evaluation_runs` will be passed to + `post_export_evaluation_runs_with_metadata`. + """ + return response, metadata + def pre_export_evaluations( self, request: evaluation_service.ExportEvaluationsRequest, @@ -1446,6 +1568,55 @@ def post_run_evaluation_with_metadata( """ return response, metadata + def pre_run_evaluation_result_metrics( + self, + request: evaluation_service.RunEvaluationResultMetricsRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + evaluation_service.RunEvaluationResultMetricsRequest, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Pre-rpc interceptor for run_evaluation_result_metrics + + Override in a subclass to manipulate the request or metadata + before they are sent to the EvaluationService server. + """ + return request, metadata + + def post_run_evaluation_result_metrics( + self, response: operations_pb2.Operation + ) -> operations_pb2.Operation: + """Post-rpc interceptor for run_evaluation_result_metrics + + DEPRECATED. Please use the `post_run_evaluation_result_metrics_with_metadata` + interceptor instead. + + Override in a subclass to read or manipulate the response + after it is returned by the EvaluationService server but before + it is returned to user code. This `post_run_evaluation_result_metrics` interceptor runs + before the `post_run_evaluation_result_metrics_with_metadata` interceptor. + """ + return response + + def post_run_evaluation_result_metrics_with_metadata( + self, + response: operations_pb2.Operation, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: + """Post-rpc interceptor for run_evaluation_result_metrics + + Override in a subclass to read or manipulate the response or metadata after it + is returned by the EvaluationService server but before it is returned to user code. + + We recommend only using this `post_run_evaluation_result_metrics_with_metadata` + interceptor in new development instead of the `post_run_evaluation_result_metrics` interceptor. + When both interceptors are used, this `post_run_evaluation_result_metrics_with_metadata` interceptor runs after the + `post_run_evaluation_result_metrics` interceptor. The (possibly modified) response returned by + `post_run_evaluation_result_metrics` will be passed to + `post_run_evaluation_result_metrics_with_metadata`. + """ + return response, metadata + def pre_test_persona_voice( self, request: evaluation_service.TestPersonaVoiceRequest, @@ -3181,7 +3352,270 @@ def __call__( ) # Jsonify the query params - query_params = _BaseEvaluationServiceRestTransport._BaseDeleteEvaluationRun._get_query_params_json( + query_params = _BaseEvaluationServiceRestTransport._BaseDeleteEvaluationRun._get_query_params_json( + transcoded_request + ) + + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + request_url = "{host}{uri}".format( + host=self._host, uri=transcoded_request["uri"] + ) + method = transcoded_request["method"] + try: + request_payload = type(request).to_json(request) + except: + request_payload = None + http_request = { + "payload": request_payload, + "requestMethod": method, + "requestUrl": request_url, + "headers": dict(metadata), + } + _LOGGER.debug( + f"Sending request for google.cloud.ces_v1beta.EvaluationServiceClient.DeleteEvaluationRun", + extra={ + "serviceName": "google.cloud.ces.v1beta.EvaluationService", + "rpcName": "DeleteEvaluationRun", + "httpRequest": http_request, + "metadata": http_request["headers"], + }, + ) + + # Send the request + response = ( + EvaluationServiceRestTransport._DeleteEvaluationRun._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + ) + ) + + # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception + # subclass. + if response.status_code >= 400: + raise core_exceptions.from_http_response(response) + + # Return the response + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_delete_evaluation_run(resp) + response_metadata = [(k, str(v)) for k, v in response.headers.items()] + resp, _ = self._interceptor.post_delete_evaluation_run_with_metadata( + resp, response_metadata + ) + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + try: + response_payload = json_format.MessageToJson(resp) + except: + response_payload = None + http_response = { + "payload": response_payload, + "headers": dict(response.headers), + "status": response.status_code, + } + _LOGGER.debug( + "Received response for google.cloud.ces_v1beta.EvaluationServiceClient.delete_evaluation_run", + extra={ + "serviceName": "google.cloud.ces.v1beta.EvaluationService", + "rpcName": "DeleteEvaluationRun", + "metadata": http_response["headers"], + "httpResponse": http_response, + }, + ) + return resp + + class _DeleteScheduledEvaluationRun( + _BaseEvaluationServiceRestTransport._BaseDeleteScheduledEvaluationRun, + EvaluationServiceRestStub, + ): + def __hash__(self): + return hash("EvaluationServiceRestTransport.DeleteScheduledEvaluationRun") + + @staticmethod + def _get_response( + host, + metadata, + query_params, + session, + timeout, + transcoded_request, + body=None, + ): + uri = transcoded_request["uri"] + method = transcoded_request["method"] + headers = dict(metadata) + headers["Content-Type"] = "application/json" + response = getattr(session, method)( + "{host}{uri}".format(host=host, uri=uri), + timeout=timeout, + headers=headers, + params=rest_helpers.flatten_query_params(query_params, strict=True), + ) + return response + + def __call__( + self, + request: evaluation_service.DeleteScheduledEvaluationRunRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ): + r"""Call the delete scheduled + evaluation run method over HTTP. + + Args: + request (~.evaluation_service.DeleteScheduledEvaluationRunRequest): + The request object. Request message for + [EvaluationService.DeleteScheduledEvaluationRun][google.cloud.ces.v1beta.EvaluationService.DeleteScheduledEvaluationRun]. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + """ + + http_options = _BaseEvaluationServiceRestTransport._BaseDeleteScheduledEvaluationRun._get_http_options() + + request, metadata = self._interceptor.pre_delete_scheduled_evaluation_run( + request, metadata + ) + transcoded_request = _BaseEvaluationServiceRestTransport._BaseDeleteScheduledEvaluationRun._get_transcoded_request( + http_options, request + ) + + # Jsonify the query params + query_params = _BaseEvaluationServiceRestTransport._BaseDeleteScheduledEvaluationRun._get_query_params_json( + transcoded_request + ) + + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + request_url = "{host}{uri}".format( + host=self._host, uri=transcoded_request["uri"] + ) + method = transcoded_request["method"] + try: + request_payload = type(request).to_json(request) + except: + request_payload = None + http_request = { + "payload": request_payload, + "requestMethod": method, + "requestUrl": request_url, + "headers": dict(metadata), + } + _LOGGER.debug( + f"Sending request for google.cloud.ces_v1beta.EvaluationServiceClient.DeleteScheduledEvaluationRun", + extra={ + "serviceName": "google.cloud.ces.v1beta.EvaluationService", + "rpcName": "DeleteScheduledEvaluationRun", + "httpRequest": http_request, + "metadata": http_request["headers"], + }, + ) + + # Send the request + response = EvaluationServiceRestTransport._DeleteScheduledEvaluationRun._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + ) + + # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception + # subclass. + if response.status_code >= 400: + raise core_exceptions.from_http_response(response) + + class _ExportEvaluationResults( + _BaseEvaluationServiceRestTransport._BaseExportEvaluationResults, + EvaluationServiceRestStub, + ): + def __hash__(self): + return hash("EvaluationServiceRestTransport.ExportEvaluationResults") + + @staticmethod + def _get_response( + host, + metadata, + query_params, + session, + timeout, + transcoded_request, + body=None, + ): + uri = transcoded_request["uri"] + method = transcoded_request["method"] + headers = dict(metadata) + headers["Content-Type"] = "application/json" + response = getattr(session, method)( + "{host}{uri}".format(host=host, uri=uri), + timeout=timeout, + headers=headers, + params=rest_helpers.flatten_query_params(query_params, strict=True), + data=body, + ) + return response + + def __call__( + self, + request: evaluation_service.ExportEvaluationResultsRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operations_pb2.Operation: + r"""Call the export evaluation results method over HTTP. + + Args: + request (~.evaluation_service.ExportEvaluationResultsRequest): + The request object. Request message for + [EvaluationService.ExportEvaluationResults][google.cloud.ces.v1beta.EvaluationService.ExportEvaluationResults]. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. + + """ + + http_options = _BaseEvaluationServiceRestTransport._BaseExportEvaluationResults._get_http_options() + + request, metadata = self._interceptor.pre_export_evaluation_results( + request, metadata + ) + transcoded_request = _BaseEvaluationServiceRestTransport._BaseExportEvaluationResults._get_transcoded_request( + http_options, request + ) + + body = _BaseEvaluationServiceRestTransport._BaseExportEvaluationResults._get_request_body_json( + transcoded_request + ) + + # Jsonify the query params + query_params = _BaseEvaluationServiceRestTransport._BaseExportEvaluationResults._get_query_params_json( transcoded_request ) @@ -3203,10 +3637,10 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.ces_v1beta.EvaluationServiceClient.DeleteEvaluationRun", + f"Sending request for google.cloud.ces_v1beta.EvaluationServiceClient.ExportEvaluationResults", extra={ "serviceName": "google.cloud.ces.v1beta.EvaluationService", - "rpcName": "DeleteEvaluationRun", + "rpcName": "ExportEvaluationResults", "httpRequest": http_request, "metadata": http_request["headers"], }, @@ -3214,13 +3648,14 @@ def __call__( # Send the request response = ( - EvaluationServiceRestTransport._DeleteEvaluationRun._get_response( + EvaluationServiceRestTransport._ExportEvaluationResults._get_response( self._host, metadata, query_params, self._session, timeout, transcoded_request, + body, ) ) @@ -3233,9 +3668,9 @@ def __call__( resp = operations_pb2.Operation() json_format.Parse(response.content, resp, ignore_unknown_fields=True) - resp = self._interceptor.post_delete_evaluation_run(resp) + resp = self._interceptor.post_export_evaluation_results(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_delete_evaluation_run_with_metadata( + resp, _ = self._interceptor.post_export_evaluation_results_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( @@ -3251,22 +3686,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.ces_v1beta.EvaluationServiceClient.delete_evaluation_run", + "Received response for google.cloud.ces_v1beta.EvaluationServiceClient.export_evaluation_results", extra={ "serviceName": "google.cloud.ces.v1beta.EvaluationService", - "rpcName": "DeleteEvaluationRun", + "rpcName": "ExportEvaluationResults", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _DeleteScheduledEvaluationRun( - _BaseEvaluationServiceRestTransport._BaseDeleteScheduledEvaluationRun, + class _ExportEvaluationRuns( + _BaseEvaluationServiceRestTransport._BaseExportEvaluationRuns, EvaluationServiceRestStub, ): def __hash__(self): - return hash("EvaluationServiceRestTransport.DeleteScheduledEvaluationRun") + return hash("EvaluationServiceRestTransport.ExportEvaluationRuns") @staticmethod def _get_response( @@ -3287,44 +3722,55 @@ def _get_response( timeout=timeout, headers=headers, params=rest_helpers.flatten_query_params(query_params, strict=True), + data=body, ) return response def __call__( self, - request: evaluation_service.DeleteScheduledEvaluationRunRequest, + request: evaluation_service.ExportEvaluationRunsRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ): - r"""Call the delete scheduled - evaluation run method over HTTP. + ) -> operations_pb2.Operation: + r"""Call the export evaluation runs method over HTTP. + + Args: + request (~.evaluation_service.ExportEvaluationRunsRequest): + The request object. Request message for + [EvaluationService.ExportEvaluationRuns][google.cloud.ces.v1beta.EvaluationService.ExportEvaluationRuns]. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. - Args: - request (~.evaluation_service.DeleteScheduledEvaluationRunRequest): - The request object. Request message for - [EvaluationService.DeleteScheduledEvaluationRun][google.cloud.ces.v1beta.EvaluationService.DeleteScheduledEvaluationRun]. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. """ - http_options = _BaseEvaluationServiceRestTransport._BaseDeleteScheduledEvaluationRun._get_http_options() + http_options = _BaseEvaluationServiceRestTransport._BaseExportEvaluationRuns._get_http_options() - request, metadata = self._interceptor.pre_delete_scheduled_evaluation_run( + request, metadata = self._interceptor.pre_export_evaluation_runs( request, metadata ) - transcoded_request = _BaseEvaluationServiceRestTransport._BaseDeleteScheduledEvaluationRun._get_transcoded_request( + transcoded_request = _BaseEvaluationServiceRestTransport._BaseExportEvaluationRuns._get_transcoded_request( http_options, request ) + body = _BaseEvaluationServiceRestTransport._BaseExportEvaluationRuns._get_request_body_json( + transcoded_request + ) + # Jsonify the query params - query_params = _BaseEvaluationServiceRestTransport._BaseDeleteScheduledEvaluationRun._get_query_params_json( + query_params = _BaseEvaluationServiceRestTransport._BaseExportEvaluationRuns._get_query_params_json( transcoded_request ) @@ -3346,23 +3792,26 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.ces_v1beta.EvaluationServiceClient.DeleteScheduledEvaluationRun", + f"Sending request for google.cloud.ces_v1beta.EvaluationServiceClient.ExportEvaluationRuns", extra={ "serviceName": "google.cloud.ces.v1beta.EvaluationService", - "rpcName": "DeleteScheduledEvaluationRun", + "rpcName": "ExportEvaluationRuns", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = EvaluationServiceRestTransport._DeleteScheduledEvaluationRun._get_response( - self._host, - metadata, - query_params, - self._session, - timeout, - transcoded_request, + response = ( + EvaluationServiceRestTransport._ExportEvaluationRuns._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + body, + ) ) # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception @@ -3370,6 +3819,38 @@ def __call__( if response.status_code >= 400: raise core_exceptions.from_http_response(response) + # Return the response + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_export_evaluation_runs(resp) + response_metadata = [(k, str(v)) for k, v in response.headers.items()] + resp, _ = self._interceptor.post_export_evaluation_runs_with_metadata( + resp, response_metadata + ) + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + try: + response_payload = json_format.MessageToJson(resp) + except: + response_payload = None + http_response = { + "payload": response_payload, + "headers": dict(response.headers), + "status": response.status_code, + } + _LOGGER.debug( + "Received response for google.cloud.ces_v1beta.EvaluationServiceClient.export_evaluation_runs", + extra={ + "serviceName": "google.cloud.ces.v1beta.EvaluationService", + "rpcName": "ExportEvaluationRuns", + "metadata": http_response["headers"], + "httpResponse": http_response, + }, + ) + return resp + class _ExportEvaluations( _BaseEvaluationServiceRestTransport._BaseExportEvaluations, EvaluationServiceRestStub, @@ -5799,6 +6280,162 @@ def __call__( ) return resp + class _RunEvaluationResultMetrics( + _BaseEvaluationServiceRestTransport._BaseRunEvaluationResultMetrics, + EvaluationServiceRestStub, + ): + def __hash__(self): + return hash("EvaluationServiceRestTransport.RunEvaluationResultMetrics") + + @staticmethod + def _get_response( + host, + metadata, + query_params, + session, + timeout, + transcoded_request, + body=None, + ): + uri = transcoded_request["uri"] + method = transcoded_request["method"] + headers = dict(metadata) + headers["Content-Type"] = "application/json" + response = getattr(session, method)( + "{host}{uri}".format(host=host, uri=uri), + timeout=timeout, + headers=headers, + params=rest_helpers.flatten_query_params(query_params, strict=True), + data=body, + ) + return response + + def __call__( + self, + request: evaluation_service.RunEvaluationResultMetricsRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operations_pb2.Operation: + r"""Call the run evaluation result + metrics method over HTTP. + + Args: + request (~.evaluation_service.RunEvaluationResultMetricsRequest): + The request object. Request message for + [EvaluationService.RunEvaluationResultMetrics][google.cloud.ces.v1beta.EvaluationService.RunEvaluationResultMetrics]. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. + + """ + + http_options = _BaseEvaluationServiceRestTransport._BaseRunEvaluationResultMetrics._get_http_options() + + request, metadata = self._interceptor.pre_run_evaluation_result_metrics( + request, metadata + ) + transcoded_request = _BaseEvaluationServiceRestTransport._BaseRunEvaluationResultMetrics._get_transcoded_request( + http_options, request + ) + + body = _BaseEvaluationServiceRestTransport._BaseRunEvaluationResultMetrics._get_request_body_json( + transcoded_request + ) + + # Jsonify the query params + query_params = _BaseEvaluationServiceRestTransport._BaseRunEvaluationResultMetrics._get_query_params_json( + transcoded_request + ) + + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + request_url = "{host}{uri}".format( + host=self._host, uri=transcoded_request["uri"] + ) + method = transcoded_request["method"] + try: + request_payload = type(request).to_json(request) + except: + request_payload = None + http_request = { + "payload": request_payload, + "requestMethod": method, + "requestUrl": request_url, + "headers": dict(metadata), + } + _LOGGER.debug( + f"Sending request for google.cloud.ces_v1beta.EvaluationServiceClient.RunEvaluationResultMetrics", + extra={ + "serviceName": "google.cloud.ces.v1beta.EvaluationService", + "rpcName": "RunEvaluationResultMetrics", + "httpRequest": http_request, + "metadata": http_request["headers"], + }, + ) + + # Send the request + response = EvaluationServiceRestTransport._RunEvaluationResultMetrics._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + body, + ) + + # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception + # subclass. + if response.status_code >= 400: + raise core_exceptions.from_http_response(response) + + # Return the response + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_run_evaluation_result_metrics(resp) + response_metadata = [(k, str(v)) for k, v in response.headers.items()] + resp, _ = ( + self._interceptor.post_run_evaluation_result_metrics_with_metadata( + resp, response_metadata + ) + ) + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + try: + response_payload = json_format.MessageToJson(resp) + except: + response_payload = None + http_response = { + "payload": response_payload, + "headers": dict(response.headers), + "status": response.status_code, + } + _LOGGER.debug( + "Received response for google.cloud.ces_v1beta.EvaluationServiceClient.run_evaluation_result_metrics", + extra={ + "serviceName": "google.cloud.ces.v1beta.EvaluationService", + "rpcName": "RunEvaluationResultMetrics", + "metadata": http_response["headers"], + "httpResponse": http_response, + }, + ) + return resp + class _TestPersonaVoice( _BaseEvaluationServiceRestTransport._BaseTestPersonaVoice, EvaluationServiceRestStub, @@ -6856,6 +7493,28 @@ def delete_scheduled_evaluation_run( self._session, self._host, self._interceptor ) # type: ignore + @property + def export_evaluation_results( + self, + ) -> Callable[ + [evaluation_service.ExportEvaluationResultsRequest], operations_pb2.Operation + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._ExportEvaluationResults( + self._session, self._host, self._interceptor + ) # type: ignore + + @property + def export_evaluation_runs( + self, + ) -> Callable[ + [evaluation_service.ExportEvaluationRunsRequest], operations_pb2.Operation + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._ExportEvaluationRuns(self._session, self._host, self._interceptor) # type: ignore + @property def export_evaluations( self, @@ -7030,6 +7689,18 @@ def run_evaluation( # In C++ this would require a dynamic_cast return self._RunEvaluation(self._session, self._host, self._interceptor) # type: ignore + @property + def run_evaluation_result_metrics( + self, + ) -> Callable[ + [evaluation_service.RunEvaluationResultMetricsRequest], operations_pb2.Operation + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._RunEvaluationResultMetrics( + self._session, self._host, self._interceptor + ) # type: ignore + @property def test_persona_voice( self, diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/transports/rest_base.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/transports/rest_base.py index a14e916d72d8..270223109978 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/transports/rest_base.py +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/services/evaluation_service/transports/rest_base.py @@ -609,6 +609,120 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params + class _BaseExportEvaluationResults: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + + @classmethod + def _get_unset_required_fields(cls, message_dict): + return { + k: v + for k, v in cls.__REQUIRED_FIELDS_DEFAULT_VALUES.items() + if k not in message_dict + } + + @staticmethod + def _get_http_options(): + http_options: List[Dict[str, str]] = [ + { + "method": "post", + "uri": "/v1beta/{parent=projects/*/locations/*/apps/*/evaluations/*}/results:export", + "body": "*", + }, + ] + return http_options + + @staticmethod + def _get_transcoded_request(http_options, request): + pb_request = evaluation_service.ExportEvaluationResultsRequest.pb(request) + transcoded_request = path_template.transcode(http_options, pb_request) + return transcoded_request + + @staticmethod + def _get_request_body_json(transcoded_request): + # Jsonify the request body + + body = json_format.MessageToJson( + transcoded_request["body"], use_integers_for_enums=True + ) + return body + + @staticmethod + def _get_query_params_json(transcoded_request): + query_params = json.loads( + json_format.MessageToJson( + transcoded_request["query_params"], + use_integers_for_enums=True, + ) + ) + query_params.update( + _BaseEvaluationServiceRestTransport._BaseExportEvaluationResults._get_unset_required_fields( + query_params + ) + ) + + query_params["$alt"] = "json;enum-encoding=int" + return query_params + + class _BaseExportEvaluationRuns: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + + @classmethod + def _get_unset_required_fields(cls, message_dict): + return { + k: v + for k, v in cls.__REQUIRED_FIELDS_DEFAULT_VALUES.items() + if k not in message_dict + } + + @staticmethod + def _get_http_options(): + http_options: List[Dict[str, str]] = [ + { + "method": "post", + "uri": "/v1beta/{parent=projects/*/locations/*/apps/*}/evaluationRuns:export", + "body": "*", + }, + ] + return http_options + + @staticmethod + def _get_transcoded_request(http_options, request): + pb_request = evaluation_service.ExportEvaluationRunsRequest.pb(request) + transcoded_request = path_template.transcode(http_options, pb_request) + return transcoded_request + + @staticmethod + def _get_request_body_json(transcoded_request): + # Jsonify the request body + + body = json_format.MessageToJson( + transcoded_request["body"], use_integers_for_enums=True + ) + return body + + @staticmethod + def _get_query_params_json(transcoded_request): + query_params = json.loads( + json_format.MessageToJson( + transcoded_request["query_params"], + use_integers_for_enums=True, + ) + ) + query_params.update( + _BaseEvaluationServiceRestTransport._BaseExportEvaluationRuns._get_unset_required_fields( + query_params + ) + ) + + query_params["$alt"] = "json;enum-encoding=int" + return query_params + class _BaseExportEvaluations: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -1405,6 +1519,65 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params + class _BaseRunEvaluationResultMetrics: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + + @classmethod + def _get_unset_required_fields(cls, message_dict): + return { + k: v + for k, v in cls.__REQUIRED_FIELDS_DEFAULT_VALUES.items() + if k not in message_dict + } + + @staticmethod + def _get_http_options(): + http_options: List[Dict[str, str]] = [ + { + "method": "post", + "uri": "/v1beta/{evaluation_result_id=projects/*/locations/*/apps/*/evaluations/*/results/*}:runEvaluationResultMetrics", + "body": "*", + }, + ] + return http_options + + @staticmethod + def _get_transcoded_request(http_options, request): + pb_request = evaluation_service.RunEvaluationResultMetricsRequest.pb( + request + ) + transcoded_request = path_template.transcode(http_options, pb_request) + return transcoded_request + + @staticmethod + def _get_request_body_json(transcoded_request): + # Jsonify the request body + + body = json_format.MessageToJson( + transcoded_request["body"], use_integers_for_enums=True + ) + return body + + @staticmethod + def _get_query_params_json(transcoded_request): + query_params = json.loads( + json_format.MessageToJson( + transcoded_request["query_params"], + use_integers_for_enums=True, + ) + ) + query_params.update( + _BaseEvaluationServiceRestTransport._BaseRunEvaluationResultMetrics._get_unset_required_fields( + query_params + ) + ) + + query_params["$alt"] = "json;enum-encoding=int" + return query_params + class _BaseTestPersonaVoice: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/services/tool_service/async_client.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/services/tool_service/async_client.py index 7f218960239f..667765374183 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/services/tool_service/async_client.py +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/services/tool_service/async_client.py @@ -48,7 +48,14 @@ from google.cloud.location import locations_pb2 # type: ignore from google.longrunning import operations_pb2 # type: ignore -from google.cloud.ces_v1beta.types import schema, tool, tool_service, toolset_tool +from google.cloud.ces_v1beta.types import ( + schema, + search_suggestions, + session_service, + tool, + tool_service, + toolset_tool, +) from .client import ToolServiceClient from .transports.base import DEFAULT_CLIENT_INFO, ToolServiceTransport diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/services/tool_service/client.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/services/tool_service/client.py index d70d8470225e..628bb214109e 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/services/tool_service/client.py +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/services/tool_service/client.py @@ -65,7 +65,14 @@ from google.cloud.location import locations_pb2 # type: ignore from google.longrunning import operations_pb2 # type: ignore -from google.cloud.ces_v1beta.types import schema, tool, tool_service, toolset_tool +from google.cloud.ces_v1beta.types import ( + schema, + search_suggestions, + session_service, + tool, + tool_service, + toolset_tool, +) from .transports.base import DEFAULT_CLIENT_INFO, ToolServiceTransport from .transports.grpc import ToolServiceGrpcTransport diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/__init__.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/__init__.py index 38b685ded67e..9be98ff2c10b 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/__init__.py +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/__init__.py @@ -16,6 +16,12 @@ from .agent import ( Agent, ) +from .agent_card import ( + AgentCard, + AgentInterface, + AgentSkill, + RemoteAgentTool, +) from .agent_service import ( BatchDeleteConversationsRequest, BatchDeleteConversationsResponse, @@ -115,6 +121,7 @@ RedactionConfig, SynthesizeSpeechConfig, TimeZoneSettings, + VpcScSettings, ) from .app_version import ( AppSnapshot, @@ -166,6 +173,7 @@ ) from .deployment import ( Deployment, + ExperimentConfig, ) from .evaluation import ( AggregatedMetrics, @@ -182,6 +190,9 @@ RunEvaluationRequest, ScheduledEvaluationRun, ) +from .evaluation_metrics_config import ( + EvaluationMetricsConfig, +) from .evaluation_service import ( CreateEvaluationDatasetRequest, CreateEvaluationExpectationRequest, @@ -194,7 +205,11 @@ DeleteEvaluationRunOperationMetadata, DeleteEvaluationRunRequest, DeleteScheduledEvaluationRunRequest, + ExportEvaluationResultsOperationMetadata, + ExportEvaluationResultsRequest, ExportEvaluationResultsResponse, + ExportEvaluationRunsOperationMetadata, + ExportEvaluationRunsRequest, ExportEvaluationRunsResponse, ExportEvaluationsRequest, ExportEvaluationsResponse, @@ -224,6 +239,9 @@ ListScheduledEvaluationRunsResponse, RunEvaluationOperationMetadata, RunEvaluationResponse, + RunEvaluationResultMetricsOperationMetadata, + RunEvaluationResultMetricsRequest, + RunEvaluationResultMetricsResponse, TestPersonaVoiceRequest, TestPersonaVoiceResponse, UpdateEvaluationDatasetRequest, @@ -267,6 +285,8 @@ McpTool, ) from .mcp_toolset import ( + McpToolDefinition, + McpToolOverride, McpToolset, ) from .mocks import ( @@ -350,6 +370,10 @@ __all__ = ( "Agent", + "AgentCard", + "AgentInterface", + "AgentSkill", + "RemoteAgentTool", "BatchDeleteConversationsRequest", "BatchDeleteConversationsResponse", "CreateAgentRequest", @@ -442,6 +466,7 @@ "RedactionConfig", "SynthesizeSpeechConfig", "TimeZoneSettings", + "VpcScSettings", "AppSnapshot", "AppVersion", "ApiAuthentication", @@ -469,6 +494,7 @@ "DataStore", "DataStoreTool", "Deployment", + "ExperimentConfig", "AggregatedMetrics", "Evaluation", "EvaluationConfig", @@ -482,6 +508,7 @@ "PersonaRunConfig", "RunEvaluationRequest", "ScheduledEvaluationRun", + "EvaluationMetricsConfig", "CreateEvaluationDatasetRequest", "CreateEvaluationExpectationRequest", "CreateEvaluationRequest", @@ -493,7 +520,11 @@ "DeleteEvaluationRunOperationMetadata", "DeleteEvaluationRunRequest", "DeleteScheduledEvaluationRunRequest", + "ExportEvaluationResultsOperationMetadata", + "ExportEvaluationResultsRequest", "ExportEvaluationResultsResponse", + "ExportEvaluationRunsOperationMetadata", + "ExportEvaluationRunsRequest", "ExportEvaluationRunsResponse", "ExportEvaluationsRequest", "ExportEvaluationsResponse", @@ -523,6 +554,9 @@ "ListScheduledEvaluationRunsResponse", "RunEvaluationOperationMetadata", "RunEvaluationResponse", + "RunEvaluationResultMetricsOperationMetadata", + "RunEvaluationResultMetricsRequest", + "RunEvaluationResultMetricsResponse", "TestPersonaVoiceRequest", "TestPersonaVoiceResponse", "UpdateEvaluationDatasetRequest", @@ -548,6 +582,8 @@ "GoogleSearchTool", "Guardrail", "McpTool", + "McpToolDefinition", + "McpToolOverride", "McpToolset", "MockedToolCall", "Omnichannel", diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/agent.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/agent.py index 2a04b2acd5f5..d49925b7833d 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/agent.py +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/agent.py @@ -152,6 +152,9 @@ class Agent(proto.Message): Optional. Agent transfer rules. If multiple rules match, the first one in the list will be used. + validation_errors (MutableSequence[str]): + Output only. Misconfigurations or errors in + the agent that may affect agent quality. """ class LlmAgent(proto.Message): @@ -201,6 +204,12 @@ class RemoteDialogflowAgent(proto.Message): ```allow_playback_interruption`` `__ set to true will be interruptable, all other messages follow the app-level barge-in settings. + language_code_variable (str): + Optional. The name of the variable that + contains the language code to be used for the + Dialogflow session. If unspecified, the default + language code of the Dialogflow agent will be + used. """ agent: str = proto.Field( @@ -229,6 +238,10 @@ class RemoteDialogflowAgent(proto.Message): proto.BOOL, number=6, ) + language_code_variable: str = proto.Field( + proto.STRING, + number=7, + ) class AgentToolset(proto.Message): r"""A toolset with a selection of its tools. @@ -354,6 +367,10 @@ class AgentToolset(proto.Message): number=30, message=agent_transfers.TransferRule, ) + validation_errors: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=32, + ) __all__ = tuple(sorted(__protobuf__.manifest)) diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/agent_card.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/agent_card.py new file mode 100644 index 000000000000..7d1e4ba85bb2 --- /dev/null +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/agent_card.py @@ -0,0 +1,216 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +from __future__ import annotations + +from typing import MutableMapping, MutableSequence + +import proto # type: ignore + +__protobuf__ = proto.module( + package="google.cloud.ces.v1beta", + manifest={ + "AgentCard", + "AgentInterface", + "AgentSkill", + "RemoteAgentTool", + }, +) + + +class AgentCard(proto.Message): + r"""AgentCard conveys key information about a remote agent. + It is a trimmed version of the AgentCard defined in the A2A + protocol + https://a2a-protocol.org/dev/specification/#441-agentcard + + Attributes: + name (str): + Required. A human-readable name for the + agent. + description (str): + Required. A description of the agent's domain + of action/solution space. + supported_interfaces (MutableSequence[google.cloud.ces_v1beta.types.AgentInterface]): + Required. Ordered list of supported + interfaces. The first entry is preferred. + version (str): + Required. The version of the agent. + skills (MutableSequence[google.cloud.ces_v1beta.types.AgentSkill]): + Required. Skills represent a unit of ability + an agent can perform. This may somewhat abstract + but represents a more focused set of actions + that the agent is highly likely to succeed at. + """ + + name: str = proto.Field( + proto.STRING, + number=1, + ) + description: str = proto.Field( + proto.STRING, + number=2, + ) + supported_interfaces: MutableSequence["AgentInterface"] = proto.RepeatedField( + proto.MESSAGE, + number=3, + message="AgentInterface", + ) + version: str = proto.Field( + proto.STRING, + number=5, + ) + skills: MutableSequence["AgentSkill"] = proto.RepeatedField( + proto.MESSAGE, + number=6, + message="AgentSkill", + ) + + +class AgentInterface(proto.Message): + r"""Declares a combination of a target URL, transport and + protocol version for interacting with the agent. This allows + agents to expose the same functionality over multiple protocol + binding mechanisms. + + Attributes: + url (str): + Required. The URL where this interface is + available. Must be a valid absolute HTTPS URL in + production. Example: + + "https://api.example.com/a2a/v1", + "https://grpc.example.com/a2a". + protocol_binding (str): + Required. The protocol binding supported at this URL. This + is an open form string, to be easily extended for other + protocol bindings. The core ones officially supported are + ``JSONRPC``, ``GRPC`` and ``HTTP+JSON``. + tenant (str): + Tenant ID to be used in the request when + calling the agent. + protocol_version (str): + Required. The version of the A2A protocol + this interface exposes. Use the latest supported + minor version per major version. Examples: + "0.3", "1.0". + """ + + url: str = proto.Field( + proto.STRING, + number=1, + ) + protocol_binding: str = proto.Field( + proto.STRING, + number=2, + ) + tenant: str = proto.Field( + proto.STRING, + number=3, + ) + protocol_version: str = proto.Field( + proto.STRING, + number=4, + ) + + +class AgentSkill(proto.Message): + r"""Represents a distinct capability or function that an agent + can perform. + + Attributes: + id (str): + Required. A unique identifier for the agent's + skill. + name (str): + Required. A human-readable name for the + skill. + description (str): + Required. A detailed description of the + skill. + tags (MutableSequence[str]): + Required. A set of keywords describing the + skill's capabilities. + examples (MutableSequence[str]): + Example prompts or scenarios that this skill + can handle. + input_modes (MutableSequence[str]): + The set of supported input media types for + this skill, overriding the agent's defaults. + output_modes (MutableSequence[str]): + The set of supported output media types for + this skill, overriding the agent's defaults. + """ + + id: str = proto.Field( + proto.STRING, + number=1, + ) + name: str = proto.Field( + proto.STRING, + number=2, + ) + description: str = proto.Field( + proto.STRING, + number=3, + ) + tags: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=4, + ) + examples: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=5, + ) + input_modes: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=6, + ) + output_modes: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=7, + ) + + +class RemoteAgentTool(proto.Message): + r"""Represents a tool that allows the agent to call another + remote agent. + + Attributes: + name (str): + Required. The name of the tool. + description (str): + Required. The description of the tool. + agent_card (google.cloud.ces_v1beta.types.AgentCard): + Required. The agent card of the remote agent + that this tool invokes. + """ + + name: str = proto.Field( + proto.STRING, + number=1, + ) + description: str = proto.Field( + proto.STRING, + number=2, + ) + agent_card: "AgentCard" = proto.Field( + proto.MESSAGE, + number=3, + message="AgentCard", + ) + + +__all__ = tuple(sorted(__protobuf__.manifest)) diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/agent_service.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/agent_service.py index a8bcc60eabd2..035e75b78496 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/agent_service.py +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/agent_service.py @@ -2131,6 +2131,11 @@ class GenerateAppResourceRequest(proto.Message): assistant, can be empty for generating a new toolset. + This field is a member of `oneof`_ ``resource``. + app_version_context (google.cloud.ces_v1beta.types.GenerateAppResourceRequest.AppVersionContext): + The app version context specifying the base + snapshot and target agent. + This field is a member of `oneof`_ ``resource``. parent (str): Required. The resource name of the app to @@ -2158,6 +2163,30 @@ class GenerateAppResourceRequest(proto.Message): hill climbing fixes. """ + class AppVersionContext(proto.Message): + r"""The app version context specifying the base snapshot and + target agent. + + Attributes: + app_version (str): + The resource name of the app version to be used by the LLM + assistant. Format: + ``projects/{project}/locations/{location}/apps/{app}/versions/{version}`` + agent_resource_name (str): + The resource name of the target agent to be used by the LLM + assistant. Format: + ``projects/{project}/locations/{location}/apps/{app}/agents/{agent}`` + """ + + app_version: str = proto.Field( + proto.STRING, + number=1, + ) + agent_resource_name: str = proto.Field( + proto.STRING, + number=2, + ) + class RefineInstructions(proto.Message): r"""The instructions to be used to refine a part of the resource. The part of the resource can be specified with a start index, @@ -2410,6 +2439,12 @@ class HillClimbingFixConfig(proto.Message): oneof="resource", message=gcc_toolset.Toolset, ) + app_version_context: AppVersionContext = proto.Field( + proto.MESSAGE, + number=12, + oneof="resource", + message=AppVersionContext, + ) parent: str = proto.Field( proto.STRING, number=1, diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/app.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/app.py index 8bd6b64321e1..ec727c8d5608 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/app.py +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/app.py @@ -21,7 +21,13 @@ import google.protobuf.timestamp_pb2 as timestamp_pb2 # type: ignore import proto # type: ignore -from google.cloud.ces_v1beta.types import bigquery_export, common, fakes, golden_run +from google.cloud.ces_v1beta.types import ( + bigquery_export, + common, + evaluation_metrics_config, + fakes, + golden_run, +) from google.cloud.ces_v1beta.types import schema as gcc_schema __protobuf__ = proto.module( @@ -40,6 +46,7 @@ "EvaluationMetricsThresholds", "EvaluationSettings", "ClientCertificateSettings", + "VpcScSettings", "ConversationLoggingSettings", "CloudLoggingSettings", "AudioRecordingConfig", @@ -135,6 +142,8 @@ class App(proto.Message): client_certificate_settings (google.cloud.ces_v1beta.types.ClientCertificateSettings): Optional. The default client certificate settings for the app. + vpc_sc_settings (google.cloud.ces_v1beta.types.VpcScSettings): + Optional. VPC-SC settings for the app. locked (bool): Optional. Indicates whether the app is locked for changes. If the app is locked, modifications @@ -147,6 +156,9 @@ class App(proto.Message): evaluation_settings (google.cloud.ces_v1beta.types.EvaluationSettings): Optional. The evaluation settings for the app. + validation_errors (MutableSequence[str]): + Output only. Misconfigurations or warnings in + the app. """ class ToolExecutionMode(proto.Enum): @@ -319,6 +331,11 @@ class VariableDeclaration(proto.Message): number=25, message="ClientCertificateSettings", ) + vpc_sc_settings: "VpcScSettings" = proto.Field( + proto.MESSAGE, + number=26, + message="VpcScSettings", + ) locked: bool = proto.Field( proto.BOOL, number=29, @@ -333,6 +350,10 @@ class VariableDeclaration(proto.Message): number=33, message="EvaluationSettings", ) + validation_errors: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=39, + ) class TimeZoneSettings(proto.Message): @@ -651,13 +672,20 @@ class LoggingSettings(proto.Message): Optional. Configuration for how sensitive data should be redacted. audio_recording_config (google.cloud.ces_v1beta.types.AudioRecordingConfig): - Optional. Configuration for how audio - interactions should be recorded. + Optional. Configuration for how audio interactions should be + recorded. The audio is subject to redaction as configured in + [RedactionConfig][google.cloud.ces.v1beta.LoggingSettings.redaction_config]. + unredacted_audio_recording_config (google.cloud.ces_v1beta.types.AudioRecordingConfig): + Optional. Configures an additional recording of unredacted + audio. This can be used to maintain a raw audio copy when + audio redaction is + [enabled][google.cloud.ces.v1beta.RedactionConfig.enable_redaction], + typically for auditing or monitoring purposes. bigquery_export_settings (google.cloud.ces_v1beta.types.BigQueryExportSettings): - Optional. Settings to describe the BigQuery - export behaviors for the app. The conversation - data will be exported to BigQuery tables if it - is enabled. + Optional. Configures the BigQuery export behaviors for the + app. The conversation data is subject to redaction as + configured in + [RedactionConfig][google.cloud.ces.v1beta.LoggingSettings.redaction_config]. cloud_logging_settings (google.cloud.ces_v1beta.types.CloudLoggingSettings): Optional. Settings to describe the Cloud Logging behaviors for the app. @@ -685,6 +713,11 @@ class LoggingSettings(proto.Message): number=2, message="AudioRecordingConfig", ) + unredacted_audio_recording_config: "AudioRecordingConfig" = proto.Field( + proto.MESSAGE, + number=8, + message="AudioRecordingConfig", + ) bigquery_export_settings: bigquery_export.BigQueryExportSettings = proto.Field( proto.MESSAGE, number=3, @@ -1041,6 +1074,12 @@ class EvaluationSettings(proto.Message): scenario_evaluation_tool_call_behaviour (google.cloud.ces_v1beta.types.EvaluationToolCallBehaviour): Optional. Configures the default tool call behaviour for scenario evaluations. + metrics_config (google.cloud.ces_v1beta.types.EvaluationMetricsConfig): + Optional. Configures the default metrics for + evaluations. + scenario_execution_mode (google.cloud.ces_v1beta.types.EvaluationSettings.ScenarioExecutionMode): + Optional. The execution mode for scenario evaluations. If + not provided, will default to QUALITY_OPTIMIZED. """ class ScenarioConversationInitiator(proto.Enum): @@ -1060,6 +1099,22 @@ class ScenarioConversationInitiator(proto.Enum): USER = 1 AGENT = 2 + class ScenarioExecutionMode(proto.Enum): + r"""The execution mode for scenario evaluations. + + Values: + SCENARIO_EXECUTION_MODE_UNSPECIFIED (0): + Unspecified execution mode. Defaults to QUALITY_OPTIMIZED. + QUALITY_OPTIMIZED (1): + Quality optimized mode. + SPEED_OPTIMIZED (2): + Speed optimized mode. + """ + + SCENARIO_EXECUTION_MODE_UNSPECIFIED = 0 + QUALITY_OPTIMIZED = 1 + SPEED_OPTIMIZED = 2 + scenario_conversation_initiator: ScenarioConversationInitiator = proto.Field( proto.ENUM, number=1, @@ -1084,6 +1139,16 @@ class ScenarioConversationInitiator(proto.Enum): enum=fakes.EvaluationToolCallBehaviour, ) ) + metrics_config: evaluation_metrics_config.EvaluationMetricsConfig = proto.Field( + proto.MESSAGE, + number=5, + message=evaluation_metrics_config.EvaluationMetricsConfig, + ) + scenario_execution_mode: ScenarioExecutionMode = proto.Field( + proto.ENUM, + number=6, + enum=ScenarioExecutionMode, + ) class ClientCertificateSettings(proto.Message): @@ -1121,6 +1186,28 @@ class ClientCertificateSettings(proto.Message): ) +class VpcScSettings(proto.Message): + r"""VPC-SC settings for the app. + + Attributes: + allowed_origins (MutableSequence[str]): + Optional. The allowed HTTP(s) origins that + OpenAPI tools in the App are able to directly + call when VPC Service Controls are enabled. + These strings must match the origin exactly, + including the port if specified. For example, + "https://example.com" or + "https://example.com:443". This list does not + yet apply to Python tools that may make direct + HTTP calls. + """ + + allowed_origins: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=1, + ) + + class ConversationLoggingSettings(proto.Message): r"""Settings to describe the conversation logging behaviors for the app. diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/conversation.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/conversation.py index b20a89036114..1ac6c33352cf 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/conversation.py +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/conversation.py @@ -133,22 +133,24 @@ class InputType(proto.Enum): INPUT_TYPE_UNSPECIFIED (0): Unspecified input type. INPUT_TYPE_TEXT (1): - The input message is text. + Text input. + INPUT_TYPE_EVENT (7): + Event input. INPUT_TYPE_AUDIO (2): - The input message is audio. + Audio input. INPUT_TYPE_IMAGE (3): - The input message is image. + Image input. INPUT_TYPE_BLOB (4): - The input message is blob file. + Blob input. INPUT_TYPE_TOOL_RESPONSE (5): - The input message is client function tool - response. + Client function tool response input. INPUT_TYPE_VARIABLES (6): - The input message are variables. + Variables input. """ INPUT_TYPE_UNSPECIFIED = 0 INPUT_TYPE_TEXT = 1 + INPUT_TYPE_EVENT = 7 INPUT_TYPE_AUDIO = 2 INPUT_TYPE_IMAGE = 3 INPUT_TYPE_BLOB = 4 diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/deployment.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/deployment.py index 6505df69341d..4cedd0b6c297 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/deployment.py +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/deployment.py @@ -25,11 +25,105 @@ __protobuf__ = proto.module( package="google.cloud.ces.v1beta", manifest={ + "ExperimentConfig", "Deployment", }, ) +class ExperimentConfig(proto.Message): + r"""Experiment for the deployment. + + Attributes: + version_release (google.cloud.ces_v1beta.types.ExperimentConfig.VersionRelease): + Optional. Version release for the experiment. + """ + + class State(proto.Enum): + r"""State of the experiment. + + Values: + STATE_UNSPECIFIED (0): + Unspecified state. + PENDING (1): + Pending state. Experiment is pending and not + valid. + RUNNING (2): + Running state. Experiment is running and + valid. + DONE (3): + Done state. Experiment is done and no longer + valid. + EXPIRED (4): + Expired state. Experiment is expired and no + longer valid. + """ + + STATE_UNSPECIFIED = 0 + PENDING = 1 + RUNNING = 2 + DONE = 3 + EXPIRED = 4 + + class VersionRelease(proto.Message): + r"""Version release for the experiment. + + Attributes: + state (google.cloud.ces_v1beta.types.ExperimentConfig.State): + Optional. State of the version release. + traffic_allocations (MutableSequence[google.cloud.ces_v1beta.types.ExperimentConfig.VersionRelease.TrafficAllocation]): + Optional. Traffic allocations for the version + release. + """ + + class TrafficAllocation(proto.Message): + r"""Traffic allocation for the version release. + + Attributes: + id (str): + Optional. Id of the traffic allocation. + Free format string, up to 128 characters. + traffic_percentage (int): + Optional. Traffic percentage of the traffic + allocation. Must be between 0 and 100. + app_version (str): + Optional. App version of the traffic allocation. Format: + ``projects/{project}/locations/{location}/apps/{app}/versions/{version}`` + """ + + id: str = proto.Field( + proto.STRING, + number=1, + ) + traffic_percentage: int = proto.Field( + proto.INT32, + number=2, + ) + app_version: str = proto.Field( + proto.STRING, + number=3, + ) + + state: "ExperimentConfig.State" = proto.Field( + proto.ENUM, + number=1, + enum="ExperimentConfig.State", + ) + traffic_allocations: MutableSequence[ + "ExperimentConfig.VersionRelease.TrafficAllocation" + ] = proto.RepeatedField( + proto.MESSAGE, + number=2, + message="ExperimentConfig.VersionRelease.TrafficAllocation", + ) + + version_release: VersionRelease = proto.Field( + proto.MESSAGE, + number=1, + message=VersionRelease, + ) + + class Deployment(proto.Message): r"""A deployment represents an immutable, queryable version of the app. It is used to deploy an app version with a specific @@ -62,6 +156,9 @@ class Deployment(proto.Message): hasn't changed during a read-modify-write operation. If the etag is empty, the update will overwrite any concurrent changes. + experiment_config (google.cloud.ces_v1beta.types.ExperimentConfig): + Optional. Experiment configuration for the + deployment. """ name: str = proto.Field( @@ -95,6 +192,11 @@ class Deployment(proto.Message): proto.STRING, number=7, ) + experiment_config: "ExperimentConfig" = proto.Field( + proto.MESSAGE, + number=9, + message="ExperimentConfig", + ) __all__ = tuple(sorted(__protobuf__.manifest)) diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/evaluation.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/evaluation.py index 5e95f81c6976..09894264d3b1 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/evaluation.py +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/evaluation.py @@ -26,6 +26,7 @@ from google.cloud.ces_v1beta.types import app as gcc_app from google.cloud.ces_v1beta.types import ( common, + evaluation_metrics_config, example, fakes, golden_run, @@ -383,6 +384,12 @@ class Evaluation(proto.Message): evaluation. This is only populated if include_last_ten_results is set to true in the ListEvaluationsRequest or GetEvaluationRequest. + evaluation_metrics_threshold_override (google.cloud.ces_v1beta.types.EvaluationMetricsThresholds): + Optional. Overrides metrics thresholds for + this specific evaluation. + evaluation_metrics_config_override (google.cloud.ces_v1beta.types.EvaluationMetricsConfig): + Optional. Overrides metrics config for this + specific evaluation. """ class GoldenExpectation(proto.Message): @@ -429,11 +436,31 @@ class GoldenExpectation(proto.Message): parameters of interest specified. Any parameters not specified will be hallucinated by the LLM. + This field is a member of `oneof`_ ``condition``. + no_tool_calls (bool): + Optional. Check that no tools were called + during this turn. + This field is a member of `oneof`_ ``condition``. note (str): Optional. A note for this requirement, useful in reporting when specific checks fail. E.g., "Check_Payment_Tool_Called". + skip_evaluation (bool): + Optional. If set to true, this specific + expectation will not be evaluated. + expectation_level_metrics_thresholds_override (google.cloud.ces_v1beta.types.EvaluationMetricsThresholds.GoldenEvaluationMetricsThresholds.ExpectationLevelMetricsThresholds): + Optional. Overrides metrics at the step + level. + agent_response_semantic_similarity_metrics_config_override (google.cloud.ces_v1beta.types.EvaluationMetricsConfig.SemanticSimilarityMetricsConfig): + Optional. Overrides for agent_response semantic similarity + metrics. + agent_response_hallucination_metrics_config_override (google.cloud.ces_v1beta.types.EvaluationMetricsConfig.HallucinationMetricsConfig): + Optional. Overrides for agent_response hallucination + metrics. + comparison_type (google.cloud.ces_v1beta.types.EvaluationMetricsConfig.ComparisonType): + Optional. The comparison type to use for the + expectation check. """ tool_call: example.ToolCall = proto.Field( @@ -472,10 +499,39 @@ class GoldenExpectation(proto.Message): oneof="condition", message=example.ToolResponse, ) + no_tool_calls: bool = proto.Field( + proto.BOOL, + number=13, + oneof="condition", + ) note: str = proto.Field( proto.STRING, number=1, ) + skip_evaluation: bool = proto.Field( + proto.BOOL, + number=8, + ) + expectation_level_metrics_thresholds_override: gcc_app.EvaluationMetricsThresholds.GoldenEvaluationMetricsThresholds.ExpectationLevelMetricsThresholds = proto.Field( + proto.MESSAGE, + number=9, + message=gcc_app.EvaluationMetricsThresholds.GoldenEvaluationMetricsThresholds.ExpectationLevelMetricsThresholds, + ) + agent_response_semantic_similarity_metrics_config_override: evaluation_metrics_config.EvaluationMetricsConfig.SemanticSimilarityMetricsConfig = proto.Field( + proto.MESSAGE, + number=10, + message=evaluation_metrics_config.EvaluationMetricsConfig.SemanticSimilarityMetricsConfig, + ) + agent_response_hallucination_metrics_config_override: evaluation_metrics_config.EvaluationMetricsConfig.HallucinationMetricsConfig = proto.Field( + proto.MESSAGE, + number=11, + message=evaluation_metrics_config.EvaluationMetricsConfig.HallucinationMetricsConfig, + ) + comparison_type: evaluation_metrics_config.EvaluationMetricsConfig.ComparisonType = proto.Field( + proto.ENUM, + number=12, + enum=evaluation_metrics_config.EvaluationMetricsConfig.ComparisonType, + ) class Step(proto.Message): r"""A step defines a singular action to happen during the @@ -534,7 +590,14 @@ class GoldenTurn(proto.Message): root_span (google.cloud.ces_v1beta.types.Span): Optional. The root span of the golden turn for processing and maintaining audio - information. + information. The uri for the audio must contain + audio saved in 16Khz sample rate. + turn_level_metrics_thresholds_override (google.cloud.ces_v1beta.types.EvaluationMetricsThresholds.GoldenEvaluationMetricsThresholds.TurnLevelMetricsThresholds): + Optional. Overrides for turn-level metric + thresholds. + hallucination_metric_behavior_override (google.cloud.ces_v1beta.types.EvaluationMetricsThresholds.HallucinationMetricBehavior): + Optional. Override for turn-level + hallucination metric behavior. """ steps: MutableSequence["Evaluation.Step"] = proto.RepeatedField( @@ -547,6 +610,16 @@ class GoldenTurn(proto.Message): number=2, message=common.Span, ) + turn_level_metrics_thresholds_override: gcc_app.EvaluationMetricsThresholds.GoldenEvaluationMetricsThresholds.TurnLevelMetricsThresholds = proto.Field( + proto.MESSAGE, + number=3, + message=gcc_app.EvaluationMetricsThresholds.GoldenEvaluationMetricsThresholds.TurnLevelMetricsThresholds, + ) + hallucination_metric_behavior_override: gcc_app.EvaluationMetricsThresholds.HallucinationMetricBehavior = proto.Field( + proto.ENUM, + number=4, + enum=gcc_app.EvaluationMetricsThresholds.HallucinationMetricBehavior, + ) class Golden(proto.Message): r"""The steps required to replay a golden conversation. @@ -554,7 +627,8 @@ class Golden(proto.Message): Attributes: turns (MutableSequence[google.cloud.ces_v1beta.types.Evaluation.GoldenTurn]): Required. The golden turns required to replay - a golden conversation. + a golden conversation. The maximum number of + allowed turns is 100. evaluation_expectations (MutableSequence[str]): Optional. The evaluation expectations to evaluate the replayed conversation against. Format: @@ -646,8 +720,8 @@ class Scenario(proto.Message): scenario. max_turns (int): Optional. The maximum number of turns to - simulate. If not specified, the simulation will - continue until the task is complete. + simulate. The maximum allowed value is 100. The + default value is 100. rubrics (MutableSequence[str]): Required. The rubrics to score the scenario against. @@ -674,6 +748,9 @@ class Scenario(proto.Message): Optional. The evaluation expectations to evaluate the conversation produced by the simulation against. Format: ``projects/{project}/locations/{location}/apps/{app}/evaluationExpectations/{evaluationExpectation}`` + scenario_execution_mode (google.cloud.ces_v1beta.types.EvaluationSettings.ScenarioExecutionMode): + Optional. The execution mode for scenario + evaluations. """ class TaskCompletionBehavior(proto.Enum): @@ -781,6 +858,13 @@ class UserFact(proto.Message): proto.STRING, number=10, ) + scenario_execution_mode: gcc_app.EvaluationSettings.ScenarioExecutionMode = ( + proto.Field( + proto.ENUM, + number=12, + enum=gcc_app.EvaluationSettings.ScenarioExecutionMode, + ) + ) golden: Golden = proto.Field( proto.MESSAGE, @@ -859,6 +943,18 @@ class UserFact(proto.Message): number=19, message="EvaluationResult", ) + evaluation_metrics_threshold_override: gcc_app.EvaluationMetricsThresholds = ( + proto.Field( + proto.MESSAGE, + number=20, + message=gcc_app.EvaluationMetricsThresholds, + ) + ) + evaluation_metrics_config_override: evaluation_metrics_config.EvaluationMetricsConfig = proto.Field( + proto.MESSAGE, + number=21, + message=evaluation_metrics_config.EvaluationMetricsConfig, + ) class EvaluationDataset(proto.Message): @@ -1055,6 +1151,8 @@ class ExecutionState(proto.Enum): EXECUTION_STATE_UNSPECIFIED (0): Evaluation result execution state is not specified. + QUEUED (5): + Evaluation result execution is queued. RUNNING (1): Evaluation result execution is running. COMPLETED (2): @@ -1062,12 +1160,16 @@ class ExecutionState(proto.Enum): ERROR (3): Evaluation result execution failed due to an internal error. + CANCELLED (4): + Evaluation result execution was cancelled. """ EXECUTION_STATE_UNSPECIFIED = 0 + QUEUED = 5 RUNNING = 1 COMPLETED = 2 ERROR = 3 + CANCELLED = 4 class GoldenExpectationOutcome(proto.Message): r"""Specifies the expectation and the result of that expectation. @@ -1099,6 +1201,13 @@ class GoldenExpectationOutcome(proto.Message): Output only. The result of the agent transfer expectation. + This field is a member of `oneof`_ ``result``. + observed_payload (google.protobuf.struct_pb2.Struct): + Output only. An observed custom payload. + There are no expectations for custom payloads. + This is only used for metrics calculation. The + outcome is always SKIPPED. + This field is a member of `oneof`_ ``result``. expectation (google.cloud.ces_v1beta.types.Evaluation.GoldenExpectation): Output only. The expectation that was @@ -1176,6 +1285,12 @@ class ToolInvocationResult(proto.Message): oneof="result", message=example.AgentTransfer, ) + observed_payload: struct_pb2.Struct = proto.Field( + proto.MESSAGE, + number=9, + oneof="result", + message=struct_pb2.Struct, + ) expectation: "Evaluation.GoldenExpectation" = proto.Field( proto.MESSAGE, number=1, @@ -2131,6 +2246,10 @@ class EvaluationRun(proto.Message): golden_run_method (google.cloud.ces_v1beta.types.GoldenRunMethod): Output only. The method used to run the evaluation. + operation (str): + Output only. The operation that created this evaluation run. + Format: + ``projects/{project}/locations/{location}/operations/{operation}`` """ class EvaluationType(proto.Enum): @@ -2160,18 +2279,24 @@ class EvaluationRunState(proto.Enum): Values: EVALUATION_RUN_STATE_UNSPECIFIED (0): Evaluation run state is not specified. + QUEUED (5): + Indicates the evaluation run is queued. RUNNING (1): Evaluation run is running. COMPLETED (2): Evaluation run has completed. ERROR (3): The evaluation run has an error. + CANCELLED (4): + Evaluation run was cancelled. """ EVALUATION_RUN_STATE_UNSPECIFIED = 0 + QUEUED = 5 RUNNING = 1 COMPLETED = 2 ERROR = 3 + CANCELLED = 4 class Progress(proto.Message): r"""The progress of the evaluation run. @@ -2195,6 +2320,9 @@ class Progress(proto.Message): Output only. Number of completed evaluation results with an outcome of PASS. (EvaluationResult.execution_state is COMPLETED and EvaluationResult.evaluation_status is PASS). + cancelled_count (int): + Output only. Number of evaluation results that were + cancelled. (EvaluationResult.execution_state is CANCELLED). """ total_count: int = proto.Field( @@ -2217,6 +2345,10 @@ class Progress(proto.Message): proto.INT32, number=5, ) + cancelled_count: int = proto.Field( + proto.INT32, + number=6, + ) class EvaluationRunSummary(proto.Message): r"""Contains the summary of passed and failed result counts for a @@ -2359,6 +2491,10 @@ class EvaluationRunSummary(proto.Message): number=21, enum=golden_run.GoldenRunMethod, ) + operation: str = proto.Field( + proto.STRING, + number=26, + ) class LatencyReport(proto.Message): @@ -2714,6 +2850,8 @@ class EvaluationErrorInfo(proto.Message): session_id (str): Output only. The session ID for the conversation that caused the error. + user_facing_error_message (str): + Output only. The user facing error message. """ class ErrorType(proto.Enum): @@ -2758,6 +2896,10 @@ class ErrorType(proto.Enum): proto.STRING, number=3, ) + user_facing_error_message: str = proto.Field( + proto.STRING, + number=4, + ) class RunEvaluationRequest(proto.Message): diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/evaluation_metrics_config.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/evaluation_metrics_config.py new file mode 100644 index 000000000000..0d04e4237312 --- /dev/null +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/evaluation_metrics_config.py @@ -0,0 +1,220 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +from __future__ import annotations + +from typing import MutableMapping, MutableSequence + +import proto # type: ignore + +__protobuf__ = proto.module( + package="google.cloud.ces.v1beta", + manifest={ + "EvaluationMetricsConfig", + }, +) + + +class EvaluationMetricsConfig(proto.Message): + r"""Configures the metrics for an evaluation. + + Attributes: + golden_metrics_config (google.cloud.ces_v1beta.types.EvaluationMetricsConfig.GoldenMetricsConfig): + Optional. Configuration for the golden + metrics for the evaluation. + scenario_metrics_config (google.cloud.ces_v1beta.types.EvaluationMetricsConfig.ScenarioMetricsConfig): + Optional. Configuration for the scenario + metrics for the evaluation. + """ + + class ComparisonType(proto.Enum): + r"""Supported comparison types for checking the agent's response. + + Values: + COMPARISON_TYPE_UNSPECIFIED (0): + Unspecified comparison type. Behavior defaults to + SEMANTIC_SIMILARITY for agent responses and tool calls. + EQUALS (1): + Exact string match. + CONTAINS (2): + Substring match (checks if the expected + string is contained in the actual response). + SEMANTIC_SIMILARITY (3): + Semantic similarity match (evaluates meaning + similarity using an LLM). + """ + + COMPARISON_TYPE_UNSPECIFIED = 0 + EQUALS = 1 + CONTAINS = 2 + SEMANTIC_SIMILARITY = 3 + + class SemanticSimilarityMetricsConfig(proto.Message): + r"""Configuration for similarity metrics for the evaluation. To disable + the metric, set the message but do not set the + ``enable_semantic_similarity_metrics`` field to true (or explicitly + set it to false). To unset the configuration and fallback to the + default behavior, omit the message entirely. + + Attributes: + enable_semantic_similarity_metrics (bool): + Optional. Whether to calculate semantic + similarity metrics for the evaluation. + """ + + enable_semantic_similarity_metrics: bool = proto.Field( + proto.BOOL, + number=1, + ) + + class ToolCorrectnessMetricsConfig(proto.Message): + r"""Configuration for correctness metrics for the evaluation. To disable + the metric, set the message but do not set the + ``enable_tool_correctness_metrics`` field to true (or explicitly set + it to false). To unset the configuration and fallback to the default + behavior, omit the message entirely. + + Attributes: + enable_tool_correctness_metrics (bool): + Optional. Whether to calculate tool + correctness metrics for the evaluation. + """ + + enable_tool_correctness_metrics: bool = proto.Field( + proto.BOOL, + number=1, + ) + + class HallucinationMetricsConfig(proto.Message): + r"""Configuration for the hallucination metrics for the evaluation. To + disable the metric, set the message but do not set the + ``enable_hallucination_metrics`` field to true (or explicitly set it + to false). To unset the configuration and fallback to the default + behavior, omit the message entirely. + + Attributes: + enable_hallucination_metrics (bool): + Optional. Whether to calculate hallucination + metrics for the evaluation. + """ + + enable_hallucination_metrics: bool = proto.Field( + proto.BOOL, + number=1, + ) + + class UserGoalMetMetricsConfig(proto.Message): + r"""Configuration for the user goal met metrics for the evaluation. To + disable the metric, set the message but do not set the + ``enable_user_goal_met_metrics`` field to true (or explicitly set it + to false). To unset the configuration and fallback to the default + behavior, omit the message entirely. + + Attributes: + enable_user_goal_met_metrics (bool): + Optional. Whether to calculate the user goal + met metrics for the evaluation. + """ + + enable_user_goal_met_metrics: bool = proto.Field( + proto.BOOL, + number=1, + ) + + class ExpectationsMetMetricsConfig(proto.Message): + r"""Configuration for the expectation level metrics for the evaluation. + To disable the metric, set the message but do not set the + ``enable_expectations_met_metrics`` field to true (or explicitly set + it to false). To unset the configuration and fallback to the default + behavior, omit the message entirely. + + Attributes: + enable_expectations_met_metrics (bool): + Optional. Whether to calculate the + expectation level metrics for the evaluation. + """ + + enable_expectations_met_metrics: bool = proto.Field( + proto.BOOL, + number=1, + ) + + class GoldenMetricsConfig(proto.Message): + r"""Configuration for the golden metrics for the evaluation. + + Attributes: + semantic_similarity_metrics_config (google.cloud.ces_v1beta.types.EvaluationMetricsConfig.SemanticSimilarityMetricsConfig): + Optional. Global configuration for semantic + similarity metrics. + tool_correctness_metrics_config (google.cloud.ces_v1beta.types.EvaluationMetricsConfig.ToolCorrectnessMetricsConfig): + Optional. Configuration for turn level tool + correctness metrics. + step_tool_correctness_metrics_config (google.cloud.ces_v1beta.types.EvaluationMetricsConfig.ToolCorrectnessMetricsConfig): + Optional. Configuration for step level tool + correctness metrics. + """ + + semantic_similarity_metrics_config: "EvaluationMetricsConfig.SemanticSimilarityMetricsConfig" = proto.Field( + proto.MESSAGE, + number=1, + message="EvaluationMetricsConfig.SemanticSimilarityMetricsConfig", + ) + tool_correctness_metrics_config: "EvaluationMetricsConfig.ToolCorrectnessMetricsConfig" = proto.Field( + proto.MESSAGE, + number=2, + message="EvaluationMetricsConfig.ToolCorrectnessMetricsConfig", + ) + step_tool_correctness_metrics_config: "EvaluationMetricsConfig.ToolCorrectnessMetricsConfig" = proto.Field( + proto.MESSAGE, + number=6, + message="EvaluationMetricsConfig.ToolCorrectnessMetricsConfig", + ) + + class ScenarioMetricsConfig(proto.Message): + r"""Configuration for the scenario metrics for the evaluation. + + Attributes: + user_goal_met_metrics_config (google.cloud.ces_v1beta.types.EvaluationMetricsConfig.UserGoalMetMetricsConfig): + Optional. Configuration for user goal met + metrics. + expectations_met_metrics_config (google.cloud.ces_v1beta.types.EvaluationMetricsConfig.ExpectationsMetMetricsConfig): + Optional. Configuration for expectation level + metrics. + """ + + user_goal_met_metrics_config: "EvaluationMetricsConfig.UserGoalMetMetricsConfig" = proto.Field( + proto.MESSAGE, + number=2, + message="EvaluationMetricsConfig.UserGoalMetMetricsConfig", + ) + expectations_met_metrics_config: "EvaluationMetricsConfig.ExpectationsMetMetricsConfig" = proto.Field( + proto.MESSAGE, + number=3, + message="EvaluationMetricsConfig.ExpectationsMetMetricsConfig", + ) + + golden_metrics_config: GoldenMetricsConfig = proto.Field( + proto.MESSAGE, + number=1, + message=GoldenMetricsConfig, + ) + scenario_metrics_config: ScenarioMetricsConfig = proto.Field( + proto.MESSAGE, + number=2, + message=ScenarioMetricsConfig, + ) + + +__all__ = tuple(sorted(__protobuf__.manifest)) diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/evaluation_service.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/evaluation_service.py index 83c34fc5f438..3a8f57b0d4a8 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/evaluation_service.py +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/evaluation_service.py @@ -28,6 +28,8 @@ __protobuf__ = proto.module( package="google.cloud.ces.v1beta", manifest={ + "RunEvaluationResultMetricsRequest", + "RunEvaluationResultMetricsResponse", "RunEvaluationResponse", "RunEvaluationOperationMetadata", "GenerateEvaluationOperationMetadata", @@ -75,12 +77,50 @@ "ExportOptions", "ExportEvaluationsRequest", "ExportEvaluationsResponse", + "ExportEvaluationResultsRequest", "ExportEvaluationResultsResponse", + "ExportEvaluationRunsRequest", "ExportEvaluationRunsResponse", + "ExportEvaluationRunsOperationMetadata", + "ExportEvaluationResultsOperationMetadata", + "RunEvaluationResultMetricsOperationMetadata", }, ) +class RunEvaluationResultMetricsRequest(proto.Message): + r"""Request message for + [EvaluationService.RunEvaluationResultMetrics][google.cloud.ces.v1beta.EvaluationService.RunEvaluationResultMetrics]. + + Attributes: + evaluation_result_id (str): + Required. The evaluation result to run metrics for. Format: + ``projects/{project}/locations/{location}/apps/{app}/evaluations/{evaluation}/results/{evaluation_result_id}`` + """ + + evaluation_result_id: str = proto.Field( + proto.STRING, + number=1, + ) + + +class RunEvaluationResultMetricsResponse(proto.Message): + r"""Response message for + [EvaluationService.RunEvaluationResultMetrics][google.cloud.ces.v1beta.EvaluationService.RunEvaluationResultMetrics]. + + Attributes: + status (google.cloud.ces_v1beta.types.EvaluationResult.Outcome): + Output only. The status of the evaluation + result metrics calculation. + """ + + status: gcc_evaluation.EvaluationResult.Outcome = proto.Field( + proto.ENUM, + number=1, + enum=gcc_evaluation.EvaluationResult.Outcome, + ) + + class RunEvaluationResponse(proto.Message): r"""Response message for [EvaluationService.RunEvaluation][google.cloud.ces.v1beta.EvaluationService.RunEvaluation]. @@ -1677,6 +1717,38 @@ class ExportEvaluationsResponse(proto.Message): ) +class ExportEvaluationResultsRequest(proto.Message): + r"""Request message for + [EvaluationService.ExportEvaluationResults][google.cloud.ces.v1beta.EvaluationService.ExportEvaluationResults]. + + Attributes: + parent (str): + Required. The resource name of the evaluation to export + evaluation results from. Format: + ``projects/{project}/locations/{location}/apps/{app}/evaluations/{evaluation}`` + names (MutableSequence[str]): + Required. The resource names of the + evaluation results to export. + export_options (google.cloud.ces_v1beta.types.ExportOptions): + Optional. The export options for the + evaluation results. + """ + + parent: str = proto.Field( + proto.STRING, + number=1, + ) + names: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=2, + ) + export_options: "ExportOptions" = proto.Field( + proto.MESSAGE, + number=3, + message="ExportOptions", + ) + + class ExportEvaluationResultsResponse(proto.Message): r"""Response message for [EvaluationService.ExportEvaluationResults][google.cloud.ces.v1beta.EvaluationService.ExportEvaluationResults]. @@ -1714,6 +1786,38 @@ class ExportEvaluationResultsResponse(proto.Message): ) +class ExportEvaluationRunsRequest(proto.Message): + r"""Request message for + [EvaluationService.ExportEvaluationRuns][google.cloud.ces.v1beta.EvaluationService.ExportEvaluationRuns]. + + Attributes: + parent (str): + Required. The resource name of the app to export evaluation + runs from. Format: + ``projects/{project}/locations/{location}/apps/{app}`` + names (MutableSequence[str]): + Required. The resource names of the + evaluation runs to export. + export_options (google.cloud.ces_v1beta.types.ExportOptions): + Optional. The export options for the + evaluation runs. + """ + + parent: str = proto.Field( + proto.STRING, + number=1, + ) + names: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=2, + ) + export_options: "ExportOptions" = proto.Field( + proto.MESSAGE, + number=3, + message="ExportOptions", + ) + + class ExportEvaluationRunsResponse(proto.Message): r"""Response message for [EvaluationService.ExportEvaluationRuns][google.cloud.ces.v1beta.EvaluationService.ExportEvaluationRuns]. @@ -1751,4 +1855,25 @@ class ExportEvaluationRunsResponse(proto.Message): ) +class ExportEvaluationRunsOperationMetadata(proto.Message): + r"""Operation metadata for + [EvaluationService.ExportEvaluationRuns][google.cloud.ces.v1beta.EvaluationService.ExportEvaluationRuns]. + + """ + + +class ExportEvaluationResultsOperationMetadata(proto.Message): + r"""Operation metadata for + [EvaluationService.ExportEvaluationResults][google.cloud.ces.v1beta.EvaluationService.ExportEvaluationResults]. + + """ + + +class RunEvaluationResultMetricsOperationMetadata(proto.Message): + r"""Operation metadata for + [EvaluationService.RunEvaluationResultMetrics][google.cloud.ces.v1beta.EvaluationService.RunEvaluationResultMetrics]. + + """ + + __all__ = tuple(sorted(__protobuf__.manifest)) diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/mcp_tool.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/mcp_tool.py index 17546ea42540..ab5c07111ff9 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/mcp_tool.py +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/mcp_tool.py @@ -38,6 +38,10 @@ class McpTool(proto.Message): Attributes: name (str): Required. The name of the MCP tool. + name_override (str): + Optional. The name override of the MCP tool. + This is populated if the name was overridden by + a Toolset override. description (str): Optional. The description of the MCP tool. input_schema (google.cloud.ces_v1beta.types.Schema): @@ -76,12 +80,41 @@ class McpTool(proto.Message): the session variables. See https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/tool/open-api#openapi-injection for more details. + state (google.cloud.ces_v1beta.types.McpTool.State): + Output only. The dynamic availability state + of the tool on the external server. """ + class State(proto.Enum): + r"""Represents the dynamic availability state of the tool. + + Values: + STATE_UNSPECIFIED (0): + Default state. + ACTIVE (1): + The tool is available and actively offered by + the server. + INACTIVE (2): + The tool is configured or pinned, but + currently not offered by the server. + STALE (3): + The tool exists on the server, but does not + match the version on the server. + """ + + STATE_UNSPECIFIED = 0 + ACTIVE = 1 + INACTIVE = 2 + STALE = 3 + name: str = proto.Field( proto.STRING, number=1, ) + name_override: str = proto.Field( + proto.STRING, + number=13, + ) description: str = proto.Field( proto.STRING, number=2, @@ -120,6 +153,11 @@ class McpTool(proto.Message): proto.STRING, number=9, ) + state: State = proto.Field( + proto.ENUM, + number=12, + enum=State, + ) __all__ = tuple(sorted(__protobuf__.manifest)) diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/mcp_toolset.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/mcp_toolset.py index 7cf5df2d4d49..2b5c39651d82 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/mcp_toolset.py +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/mcp_toolset.py @@ -19,12 +19,14 @@ import proto # type: ignore -from google.cloud.ces_v1beta.types import auth, common +from google.cloud.ces_v1beta.types import auth, common, schema __protobuf__ = proto.module( package="google.cloud.ces.v1beta", manifest={ "McpToolset", + "McpToolOverride", + "McpToolDefinition", }, ) @@ -65,6 +67,12 @@ class McpToolset(proto.Message): the session variables. See https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/tool/open-api#openapi-injection for more details. + tool_overrides (MutableSequence[google.cloud.ces_v1beta.types.McpToolOverride]): + Optional. Overrides for individual tools + within this toolset. This allows overriding + specific details like descriptions, names, or + pinning the tools' states so they aren't fully + dynamic. """ server_address: str = proto.Field( @@ -91,6 +99,89 @@ class McpToolset(proto.Message): proto.STRING, number=5, ) + tool_overrides: MutableSequence["McpToolOverride"] = proto.RepeatedField( + proto.MESSAGE, + number=6, + message="McpToolOverride", + ) + + +class McpToolOverride(proto.Message): + r"""Overrides associated with a given tool in a Toolset. + This enables "pinning" or "overriding" of tool definitions from + the external dynamic server. + + Attributes: + tool (str): + Required. The original name of the tool as it + is emitted by the MCP server. + name_override (str): + Optional. If present, this tool uses this + name in the Agent instead of the original name. + This is primarily used as an alias if the MCP + server offers poorly named tools. + description_override (str): + Optional. If present, this tool uses this + description instead of the original description + from the server. + snapshot (google.cloud.ces_v1beta.types.McpToolDefinition): + Output only. If present, this tool is + "Pinned" and uses the snapshot values as + fallbacks if the server becomes temporarily + unavailable or if no Override is present. + """ + + tool: str = proto.Field( + proto.STRING, + number=1, + ) + name_override: str = proto.Field( + proto.STRING, + number=2, + ) + description_override: str = proto.Field( + proto.STRING, + number=3, + ) + snapshot: "McpToolDefinition" = proto.Field( + proto.MESSAGE, + number=4, + message="McpToolDefinition", + ) + + +class McpToolDefinition(proto.Message): + r"""Container for a tool's core definition elements that are + snapshot. Schemas in the snapshot are used as-is and cannot be + overridden. + + Attributes: + description (str): + Output only. The description of the MCP tool. This can be + overridden by ``description_override`` in + ``McpToolOverride``. + input_schema (google.cloud.ces_v1beta.types.Schema): + Output only. The schema of the input + arguments of the MCP tool. + output_schema (google.cloud.ces_v1beta.types.Schema): + Output only. The schema of the output + arguments of the MCP tool. + """ + + description: str = proto.Field( + proto.STRING, + number=1, + ) + input_schema: schema.Schema = proto.Field( + proto.MESSAGE, + number=2, + message=schema.Schema, + ) + output_schema: schema.Schema = proto.Field( + proto.MESSAGE, + number=3, + message=schema.Schema, + ) __all__ = tuple(sorted(__protobuf__.manifest)) diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/python_function.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/python_function.py index 43522e6e35b8..1dbaf9759e0d 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/python_function.py +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/python_function.py @@ -19,6 +19,8 @@ import proto # type: ignore +from google.cloud.ces_v1beta.types import common + __protobuf__ = proto.module( package="google.cloud.ces.v1beta", manifest={ @@ -44,6 +46,9 @@ class PythonFunction(proto.Message): Output only. The description of the Python function, parsed from the python code's docstring. + service_directory_config (google.cloud.ces_v1beta.types.ServiceDirectoryConfig): + Optional. Service Directory configuration for + the tool. """ name: str = proto.Field( @@ -58,6 +63,11 @@ class PythonFunction(proto.Message): proto.STRING, number=3, ) + service_directory_config: common.ServiceDirectoryConfig = proto.Field( + proto.MESSAGE, + number=4, + message=common.ServiceDirectoryConfig, + ) __all__ = tuple(sorted(__protobuf__.manifest)) diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/session_service.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/session_service.py index 51ee29545080..bf4214dcd939 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/session_service.py +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/session_service.py @@ -361,6 +361,9 @@ class CitedChunk(proto.Message): Title of the cited document. text (str): Text used for citation. + requires_attribution (bool): + Whether this citation requires attribution to + be shown to the end users. """ uri: str = proto.Field( @@ -375,6 +378,10 @@ class CitedChunk(proto.Message): proto.STRING, number=3, ) + requires_attribution: bool = proto.Field( + proto.BOOL, + number=4, + ) cited_chunks: MutableSequence[CitedChunk] = proto.RepeatedField( proto.MESSAGE, diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/tool.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/tool.py index 53f46b9244cc..522f9fc453f4 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/tool.py +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/tool.py @@ -17,12 +17,13 @@ from typing import MutableMapping, MutableSequence +import google.protobuf.duration_pb2 as duration_pb2 # type: ignore import google.protobuf.timestamp_pb2 as timestamp_pb2 # type: ignore import proto # type: ignore +from google.cloud.ces_v1beta.types import agent_card, common, fakes from google.cloud.ces_v1beta.types import agent_tool as gcc_agent_tool from google.cloud.ces_v1beta.types import client_function as gcc_client_function -from google.cloud.ces_v1beta.types import common, fakes from google.cloud.ces_v1beta.types import connector_tool as gcc_connector_tool from google.cloud.ces_v1beta.types import data_store_tool as gcc_data_store_tool from google.cloud.ces_v1beta.types import file_search_tool as gcc_file_search_tool @@ -98,6 +99,10 @@ class Tool(proto.Message): widget_tool (google.cloud.ces_v1beta.types.WidgetTool): Optional. The widget tool. + This field is a member of `oneof`_ ``tool_type``. + remote_agent_tool (google.cloud.ces_v1beta.types.RemoteAgentTool): + Optional. The remote agent tool. + This field is a member of `oneof`_ ``tool_type``. name (str): Identifier. The resource name of the tool. Format: @@ -116,6 +121,10 @@ class Tool(proto.Message): ``name`` property. execution_type (google.cloud.ces_v1beta.types.ExecutionType): Optional. The execution type of the tool. + timeout (google.protobuf.duration_pb2.Duration): + Optional. The timeout for the tool execution. If not set, + the default timeout is 30 seconds for ``SYNCHRONOUS`` tools + and 60 seconds for ``ASYNCHRONOUS`` tools. create_time (google.protobuf.timestamp_pb2.Timestamp): Output only. Timestamp when the tool was created. @@ -202,6 +211,12 @@ class Tool(proto.Message): oneof="tool_type", message=gcc_widget_tool.WidgetTool, ) + remote_agent_tool: agent_card.RemoteAgentTool = proto.Field( + proto.MESSAGE, + number=25, + oneof="tool_type", + message=agent_card.RemoteAgentTool, + ) name: str = proto.Field( proto.STRING, number=1, @@ -215,6 +230,11 @@ class Tool(proto.Message): number=12, enum=common.ExecutionType, ) + timeout: duration_pb2.Duration = proto.Field( + proto.MESSAGE, + number=22, + message=duration_pb2.Duration, + ) create_time: timestamp_pb2.Timestamp = proto.Field( proto.MESSAGE, number=6, diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/tool_service.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/tool_service.py index 8b3442379966..e4861ebddd72 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/tool_service.py +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/tool_service.py @@ -20,7 +20,7 @@ import google.protobuf.struct_pb2 as struct_pb2 # type: ignore import proto # type: ignore -from google.cloud.ces_v1beta.types import schema, session_service +from google.cloud.ces_v1beta.types import schema, search_suggestions, session_service from google.cloud.ces_v1beta.types import tool as gcc_tool from google.cloud.ces_v1beta.types import toolset_tool as gcc_toolset_tool @@ -157,6 +157,13 @@ class ExecuteToolResponse(proto.Message): variables (google.protobuf.struct_pb2.Struct): The variable values at the end of the tool execution. + citations (google.cloud.ces_v1beta.types.Citations): + Citations that provide the source information + for the tool's execution. + google_search_suggestions (google.cloud.ces_v1beta.types.GoogleSearchSuggestions): + The suggestions returned from Google Search + as a result of invoking the Google Search Tool + during the tool execution. """ tool: str = proto.Field( @@ -180,6 +187,16 @@ class ExecuteToolResponse(proto.Message): number=4, message=struct_pb2.Struct, ) + citations: session_service.Citations = proto.Field( + proto.MESSAGE, + number=5, + message=session_service.Citations, + ) + google_search_suggestions: search_suggestions.GoogleSearchSuggestions = proto.Field( + proto.MESSAGE, + number=6, + message=search_suggestions.GoogleSearchSuggestions, + ) class RetrieveToolSchemaRequest(proto.Message): @@ -294,6 +311,12 @@ class RetrieveToolsRequest(proto.Message): Optional. The identifiers of the tools to retrieve from the toolset. If empty, all tools in the toolset will be returned. + bypass_persistence_config (bool): + Optional. If true, the returned tools will + contain raw descriptions and schemas directly + from the server, bypassing any stored + persistence configurations + (overrides/snapshots). """ toolset: str = proto.Field( @@ -304,6 +327,10 @@ class RetrieveToolsRequest(proto.Message): proto.STRING, number=3, ) + bypass_persistence_config: bool = proto.Field( + proto.BOOL, + number=4, + ) class RetrieveToolsResponse(proto.Message): diff --git a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/widget_tool.py b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/widget_tool.py index e5d0af9a2133..dca82bbf7459 100644 --- a/packages/google-cloud-ces/google/cloud/ces_v1beta/types/widget_tool.py +++ b/packages/google-cloud-ces/google/cloud/ces_v1beta/types/widget_tool.py @@ -62,6 +62,9 @@ class WidgetTool(proto.Message): Optional. The mapping that defines how data from a source tool is mapped to the widget's input parameters. + text_response_config (google.cloud.ces_v1beta.types.WidgetTool.TextResponseConfig): + Optional. Configuration for always-included + text responses. """ class WidgetType(proto.Enum): @@ -111,6 +114,59 @@ class WidgetType(proto.Enum): APPOINTMENT_SCHEDULER = 11 CONTACT_FORM = 12 + class TextResponseConfig(proto.Message): + r"""Configuration for the text response returned with the widget. + + Attributes: + type_ (google.cloud.ces_v1beta.types.WidgetTool.TextResponseConfig.Type): + Optional. The strategy for providing the text + response. + static_text (str): + Optional. The static text response to return + when type is STATIC. + text_response_instruction (str): + Optional. Instruction for the LLM on how to generate the + text response. Used as the description for the text response + parameter if type is LLM_GENERATED. + """ + + class Type(proto.Enum): + r"""Defines how the text response is produced. + + Values: + TYPE_UNSPECIFIED (0): + Unspecified type. + NONE (1): + The LLM dynamically decides whether to + generate a text response alongside the widget + based on the conversation context. + LLM_GENERATED (2): + The LLM is explicitly required to generate a + text response. + STATIC (3): + A pre-defined static text response is always + used. + """ + + TYPE_UNSPECIFIED = 0 + NONE = 1 + LLM_GENERATED = 2 + STATIC = 3 + + type_: "WidgetTool.TextResponseConfig.Type" = proto.Field( + proto.ENUM, + number=1, + enum="WidgetTool.TextResponseConfig.Type", + ) + static_text: str = proto.Field( + proto.STRING, + number=2, + ) + text_response_instruction: str = proto.Field( + proto.STRING, + number=3, + ) + class DataMapping(proto.Message): r"""Configuration for mapping data from a source tool to the widget's input parameters. @@ -205,6 +261,11 @@ class Mode(proto.Enum): number=6, message=DataMapping, ) + text_response_config: TextResponseConfig = proto.Field( + proto.MESSAGE, + number=7, + message=TextResponseConfig, + ) __all__ = tuple(sorted(__protobuf__.manifest)) diff --git a/packages/google-cloud-ces/samples/generated_samples/ces_v1beta_generated_evaluation_service_export_evaluation_results_async.py b/packages/google-cloud-ces/samples/generated_samples/ces_v1beta_generated_evaluation_service_export_evaluation_results_async.py new file mode 100644 index 000000000000..475c2cd0ed17 --- /dev/null +++ b/packages/google-cloud-ces/samples/generated_samples/ces_v1beta_generated_evaluation_service_export_evaluation_results_async.py @@ -0,0 +1,58 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for ExportEvaluationResults +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-ces + + +# [START ces_v1beta_generated_EvaluationService_ExportEvaluationResults_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import ces_v1beta + + +async def sample_export_evaluation_results(): + # Create a client + client = ces_v1beta.EvaluationServiceAsyncClient() + + # Initialize request argument(s) + request = ces_v1beta.ExportEvaluationResultsRequest( + parent="parent_value", + names=["names_value1", "names_value2"], + ) + + # Make the request + operation = await client.export_evaluation_results(request=request) + + print("Waiting for operation to complete...") + + response = await operation.result() + + # Handle the response + print(response) + + +# [END ces_v1beta_generated_EvaluationService_ExportEvaluationResults_async] diff --git a/packages/google-cloud-ces/samples/generated_samples/ces_v1beta_generated_evaluation_service_export_evaluation_results_sync.py b/packages/google-cloud-ces/samples/generated_samples/ces_v1beta_generated_evaluation_service_export_evaluation_results_sync.py new file mode 100644 index 000000000000..bed15bb2086c --- /dev/null +++ b/packages/google-cloud-ces/samples/generated_samples/ces_v1beta_generated_evaluation_service_export_evaluation_results_sync.py @@ -0,0 +1,58 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for ExportEvaluationResults +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-ces + + +# [START ces_v1beta_generated_EvaluationService_ExportEvaluationResults_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import ces_v1beta + + +def sample_export_evaluation_results(): + # Create a client + client = ces_v1beta.EvaluationServiceClient() + + # Initialize request argument(s) + request = ces_v1beta.ExportEvaluationResultsRequest( + parent="parent_value", + names=["names_value1", "names_value2"], + ) + + # Make the request + operation = client.export_evaluation_results(request=request) + + print("Waiting for operation to complete...") + + response = operation.result() + + # Handle the response + print(response) + + +# [END ces_v1beta_generated_EvaluationService_ExportEvaluationResults_sync] diff --git a/packages/google-cloud-ces/samples/generated_samples/ces_v1beta_generated_evaluation_service_export_evaluation_runs_async.py b/packages/google-cloud-ces/samples/generated_samples/ces_v1beta_generated_evaluation_service_export_evaluation_runs_async.py new file mode 100644 index 000000000000..5cedb83f1d10 --- /dev/null +++ b/packages/google-cloud-ces/samples/generated_samples/ces_v1beta_generated_evaluation_service_export_evaluation_runs_async.py @@ -0,0 +1,58 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for ExportEvaluationRuns +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-ces + + +# [START ces_v1beta_generated_EvaluationService_ExportEvaluationRuns_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import ces_v1beta + + +async def sample_export_evaluation_runs(): + # Create a client + client = ces_v1beta.EvaluationServiceAsyncClient() + + # Initialize request argument(s) + request = ces_v1beta.ExportEvaluationRunsRequest( + parent="parent_value", + names=["names_value1", "names_value2"], + ) + + # Make the request + operation = await client.export_evaluation_runs(request=request) + + print("Waiting for operation to complete...") + + response = await operation.result() + + # Handle the response + print(response) + + +# [END ces_v1beta_generated_EvaluationService_ExportEvaluationRuns_async] diff --git a/packages/google-cloud-ces/samples/generated_samples/ces_v1beta_generated_evaluation_service_export_evaluation_runs_sync.py b/packages/google-cloud-ces/samples/generated_samples/ces_v1beta_generated_evaluation_service_export_evaluation_runs_sync.py new file mode 100644 index 000000000000..009942d18854 --- /dev/null +++ b/packages/google-cloud-ces/samples/generated_samples/ces_v1beta_generated_evaluation_service_export_evaluation_runs_sync.py @@ -0,0 +1,58 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for ExportEvaluationRuns +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-ces + + +# [START ces_v1beta_generated_EvaluationService_ExportEvaluationRuns_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import ces_v1beta + + +def sample_export_evaluation_runs(): + # Create a client + client = ces_v1beta.EvaluationServiceClient() + + # Initialize request argument(s) + request = ces_v1beta.ExportEvaluationRunsRequest( + parent="parent_value", + names=["names_value1", "names_value2"], + ) + + # Make the request + operation = client.export_evaluation_runs(request=request) + + print("Waiting for operation to complete...") + + response = operation.result() + + # Handle the response + print(response) + + +# [END ces_v1beta_generated_EvaluationService_ExportEvaluationRuns_sync] diff --git a/packages/google-cloud-ces/samples/generated_samples/ces_v1beta_generated_evaluation_service_run_evaluation_result_metrics_async.py b/packages/google-cloud-ces/samples/generated_samples/ces_v1beta_generated_evaluation_service_run_evaluation_result_metrics_async.py new file mode 100644 index 000000000000..0b8453560128 --- /dev/null +++ b/packages/google-cloud-ces/samples/generated_samples/ces_v1beta_generated_evaluation_service_run_evaluation_result_metrics_async.py @@ -0,0 +1,57 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for RunEvaluationResultMetrics +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-ces + + +# [START ces_v1beta_generated_EvaluationService_RunEvaluationResultMetrics_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import ces_v1beta + + +async def sample_run_evaluation_result_metrics(): + # Create a client + client = ces_v1beta.EvaluationServiceAsyncClient() + + # Initialize request argument(s) + request = ces_v1beta.RunEvaluationResultMetricsRequest( + evaluation_result_id="evaluation_result_id_value", + ) + + # Make the request + operation = await client.run_evaluation_result_metrics(request=request) + + print("Waiting for operation to complete...") + + response = await operation.result() + + # Handle the response + print(response) + + +# [END ces_v1beta_generated_EvaluationService_RunEvaluationResultMetrics_async] diff --git a/packages/google-cloud-ces/samples/generated_samples/ces_v1beta_generated_evaluation_service_run_evaluation_result_metrics_sync.py b/packages/google-cloud-ces/samples/generated_samples/ces_v1beta_generated_evaluation_service_run_evaluation_result_metrics_sync.py new file mode 100644 index 000000000000..578ba7b5be2b --- /dev/null +++ b/packages/google-cloud-ces/samples/generated_samples/ces_v1beta_generated_evaluation_service_run_evaluation_result_metrics_sync.py @@ -0,0 +1,57 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for RunEvaluationResultMetrics +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-ces + + +# [START ces_v1beta_generated_EvaluationService_RunEvaluationResultMetrics_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import ces_v1beta + + +def sample_run_evaluation_result_metrics(): + # Create a client + client = ces_v1beta.EvaluationServiceClient() + + # Initialize request argument(s) + request = ces_v1beta.RunEvaluationResultMetricsRequest( + evaluation_result_id="evaluation_result_id_value", + ) + + # Make the request + operation = client.run_evaluation_result_metrics(request=request) + + print("Waiting for operation to complete...") + + response = operation.result() + + # Handle the response + print(response) + + +# [END ces_v1beta_generated_EvaluationService_RunEvaluationResultMetrics_sync] diff --git a/packages/google-cloud-ces/samples/generated_samples/snippet_metadata_google.cloud.ces.v1beta.json b/packages/google-cloud-ces/samples/generated_samples/snippet_metadata_google.cloud.ces.v1beta.json index 6a2d1585f052..0d389ae737b9 100644 --- a/packages/google-cloud-ces/samples/generated_samples/snippet_metadata_google.cloud.ces.v1beta.json +++ b/packages/google-cloud-ces/samples/generated_samples/snippet_metadata_google.cloud.ces.v1beta.json @@ -10026,6 +10026,344 @@ ], "title": "ces_v1beta_generated_evaluation_service_delete_scheduled_evaluation_run_sync.py" }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.ces_v1beta.EvaluationServiceAsyncClient", + "shortName": "EvaluationServiceAsyncClient" + }, + "fullName": "google.cloud.ces_v1beta.EvaluationServiceAsyncClient.export_evaluation_results", + "method": { + "fullName": "google.cloud.ces.v1beta.EvaluationService.ExportEvaluationResults", + "service": { + "fullName": "google.cloud.ces.v1beta.EvaluationService", + "shortName": "EvaluationService" + }, + "shortName": "ExportEvaluationResults" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.ces_v1beta.types.ExportEvaluationResultsRequest" + }, + { + "name": "parent", + "type": "str" + }, + { + "name": "names", + "type": "MutableSequence[str]" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.api_core.operation_async.AsyncOperation", + "shortName": "export_evaluation_results" + }, + "description": "Sample for ExportEvaluationResults", + "file": "ces_v1beta_generated_evaluation_service_export_evaluation_results_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "ces_v1beta_generated_EvaluationService_ExportEvaluationResults_async", + "segments": [ + { + "end": 56, + "start": 27, + "type": "FULL" + }, + { + "end": 56, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 46, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 53, + "start": 47, + "type": "REQUEST_EXECUTION" + }, + { + "end": 57, + "start": 54, + "type": "RESPONSE_HANDLING" + } + ], + "title": "ces_v1beta_generated_evaluation_service_export_evaluation_results_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.ces_v1beta.EvaluationServiceClient", + "shortName": "EvaluationServiceClient" + }, + "fullName": "google.cloud.ces_v1beta.EvaluationServiceClient.export_evaluation_results", + "method": { + "fullName": "google.cloud.ces.v1beta.EvaluationService.ExportEvaluationResults", + "service": { + "fullName": "google.cloud.ces.v1beta.EvaluationService", + "shortName": "EvaluationService" + }, + "shortName": "ExportEvaluationResults" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.ces_v1beta.types.ExportEvaluationResultsRequest" + }, + { + "name": "parent", + "type": "str" + }, + { + "name": "names", + "type": "MutableSequence[str]" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.api_core.operation.Operation", + "shortName": "export_evaluation_results" + }, + "description": "Sample for ExportEvaluationResults", + "file": "ces_v1beta_generated_evaluation_service_export_evaluation_results_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "ces_v1beta_generated_EvaluationService_ExportEvaluationResults_sync", + "segments": [ + { + "end": 56, + "start": 27, + "type": "FULL" + }, + { + "end": 56, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 46, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 53, + "start": 47, + "type": "REQUEST_EXECUTION" + }, + { + "end": 57, + "start": 54, + "type": "RESPONSE_HANDLING" + } + ], + "title": "ces_v1beta_generated_evaluation_service_export_evaluation_results_sync.py" + }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.ces_v1beta.EvaluationServiceAsyncClient", + "shortName": "EvaluationServiceAsyncClient" + }, + "fullName": "google.cloud.ces_v1beta.EvaluationServiceAsyncClient.export_evaluation_runs", + "method": { + "fullName": "google.cloud.ces.v1beta.EvaluationService.ExportEvaluationRuns", + "service": { + "fullName": "google.cloud.ces.v1beta.EvaluationService", + "shortName": "EvaluationService" + }, + "shortName": "ExportEvaluationRuns" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.ces_v1beta.types.ExportEvaluationRunsRequest" + }, + { + "name": "parent", + "type": "str" + }, + { + "name": "names", + "type": "MutableSequence[str]" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.api_core.operation_async.AsyncOperation", + "shortName": "export_evaluation_runs" + }, + "description": "Sample for ExportEvaluationRuns", + "file": "ces_v1beta_generated_evaluation_service_export_evaluation_runs_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "ces_v1beta_generated_EvaluationService_ExportEvaluationRuns_async", + "segments": [ + { + "end": 56, + "start": 27, + "type": "FULL" + }, + { + "end": 56, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 46, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 53, + "start": 47, + "type": "REQUEST_EXECUTION" + }, + { + "end": 57, + "start": 54, + "type": "RESPONSE_HANDLING" + } + ], + "title": "ces_v1beta_generated_evaluation_service_export_evaluation_runs_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.ces_v1beta.EvaluationServiceClient", + "shortName": "EvaluationServiceClient" + }, + "fullName": "google.cloud.ces_v1beta.EvaluationServiceClient.export_evaluation_runs", + "method": { + "fullName": "google.cloud.ces.v1beta.EvaluationService.ExportEvaluationRuns", + "service": { + "fullName": "google.cloud.ces.v1beta.EvaluationService", + "shortName": "EvaluationService" + }, + "shortName": "ExportEvaluationRuns" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.ces_v1beta.types.ExportEvaluationRunsRequest" + }, + { + "name": "parent", + "type": "str" + }, + { + "name": "names", + "type": "MutableSequence[str]" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.api_core.operation.Operation", + "shortName": "export_evaluation_runs" + }, + "description": "Sample for ExportEvaluationRuns", + "file": "ces_v1beta_generated_evaluation_service_export_evaluation_runs_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "ces_v1beta_generated_EvaluationService_ExportEvaluationRuns_sync", + "segments": [ + { + "end": 56, + "start": 27, + "type": "FULL" + }, + { + "end": 56, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 46, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 53, + "start": 47, + "type": "REQUEST_EXECUTION" + }, + { + "end": 57, + "start": 54, + "type": "RESPONSE_HANDLING" + } + ], + "title": "ces_v1beta_generated_evaluation_service_export_evaluation_runs_sync.py" + }, { "canonical": true, "clientMethod": { @@ -12441,6 +12779,167 @@ ], "title": "ces_v1beta_generated_evaluation_service_list_scheduled_evaluation_runs_sync.py" }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.ces_v1beta.EvaluationServiceAsyncClient", + "shortName": "EvaluationServiceAsyncClient" + }, + "fullName": "google.cloud.ces_v1beta.EvaluationServiceAsyncClient.run_evaluation_result_metrics", + "method": { + "fullName": "google.cloud.ces.v1beta.EvaluationService.RunEvaluationResultMetrics", + "service": { + "fullName": "google.cloud.ces.v1beta.EvaluationService", + "shortName": "EvaluationService" + }, + "shortName": "RunEvaluationResultMetrics" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.ces_v1beta.types.RunEvaluationResultMetricsRequest" + }, + { + "name": "evaluation_result_id", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.api_core.operation_async.AsyncOperation", + "shortName": "run_evaluation_result_metrics" + }, + "description": "Sample for RunEvaluationResultMetrics", + "file": "ces_v1beta_generated_evaluation_service_run_evaluation_result_metrics_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "ces_v1beta_generated_EvaluationService_RunEvaluationResultMetrics_async", + "segments": [ + { + "end": 55, + "start": 27, + "type": "FULL" + }, + { + "end": 55, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 52, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 56, + "start": 53, + "type": "RESPONSE_HANDLING" + } + ], + "title": "ces_v1beta_generated_evaluation_service_run_evaluation_result_metrics_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.ces_v1beta.EvaluationServiceClient", + "shortName": "EvaluationServiceClient" + }, + "fullName": "google.cloud.ces_v1beta.EvaluationServiceClient.run_evaluation_result_metrics", + "method": { + "fullName": "google.cloud.ces.v1beta.EvaluationService.RunEvaluationResultMetrics", + "service": { + "fullName": "google.cloud.ces.v1beta.EvaluationService", + "shortName": "EvaluationService" + }, + "shortName": "RunEvaluationResultMetrics" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.ces_v1beta.types.RunEvaluationResultMetricsRequest" + }, + { + "name": "evaluation_result_id", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.api_core.operation.Operation", + "shortName": "run_evaluation_result_metrics" + }, + "description": "Sample for RunEvaluationResultMetrics", + "file": "ces_v1beta_generated_evaluation_service_run_evaluation_result_metrics_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "ces_v1beta_generated_EvaluationService_RunEvaluationResultMetrics_sync", + "segments": [ + { + "end": 55, + "start": 27, + "type": "FULL" + }, + { + "end": 55, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 52, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 56, + "start": 53, + "type": "RESPONSE_HANDLING" + } + ], + "title": "ces_v1beta_generated_evaluation_service_run_evaluation_result_metrics_sync.py" + }, { "canonical": true, "clientMethod": { diff --git a/packages/google-cloud-ces/tests/unit/gapic/ces_v1beta/test_agent_service.py b/packages/google-cloud-ces/tests/unit/gapic/ces_v1beta/test_agent_service.py index 11f7b2fae5ea..8c34161fe618 100644 --- a/packages/google-cloud-ces/tests/unit/gapic/ces_v1beta/test_agent_service.py +++ b/packages/google-cloud-ces/tests/unit/gapic/ces_v1beta/test_agent_service.py @@ -71,6 +71,7 @@ ) from google.cloud.ces_v1beta.types import ( agent, + agent_card, agent_service, agent_tool, agent_transfers, @@ -87,6 +88,7 @@ data_store, data_store_tool, deployment, + evaluation_metrics_config, example, fakes, file_context, @@ -1914,6 +1916,7 @@ def test_get_app(request_type, transport: str = "grpc"): etag="etag_value", deployment_count=1737, locked=True, + validation_errors=["validation_errors_value"], ) response = client.get_app(request) @@ -1936,6 +1939,7 @@ def test_get_app(request_type, transport: str = "grpc"): assert response.etag == "etag_value" assert response.deployment_count == 1737 assert response.locked is True + assert response.validation_errors == ["validation_errors_value"] def test_get_app_non_empty_request_with_auto_populated_field(): @@ -2076,6 +2080,7 @@ async def test_get_app_async(request_type, transport: str = "grpc_asyncio"): etag="etag_value", deployment_count=1737, locked=True, + validation_errors=["validation_errors_value"], ) ) response = await client.get_app(request) @@ -2099,6 +2104,7 @@ async def test_get_app_async(request_type, transport: str = "grpc_asyncio"): assert response.etag == "etag_value" assert response.deployment_count == 1737 assert response.locked is True + assert response.validation_errors == ["validation_errors_value"] def test_get_app_field_headers(): @@ -2620,6 +2626,7 @@ def test_update_app(request_type, transport: str = "grpc"): etag="etag_value", deployment_count=1737, locked=True, + validation_errors=["validation_errors_value"], ) response = client.update_app(request) @@ -2642,6 +2649,7 @@ def test_update_app(request_type, transport: str = "grpc"): assert response.etag == "etag_value" assert response.deployment_count == 1737 assert response.locked is True + assert response.validation_errors == ["validation_errors_value"] def test_update_app_non_empty_request_with_auto_populated_field(): @@ -2778,6 +2786,7 @@ async def test_update_app_async(request_type, transport: str = "grpc_asyncio"): etag="etag_value", deployment_count=1737, locked=True, + validation_errors=["validation_errors_value"], ) ) response = await client.update_app(request) @@ -2801,6 +2810,7 @@ async def test_update_app_async(request_type, transport: str = "grpc_asyncio"): assert response.etag == "etag_value" assert response.deployment_count == 1737 assert response.locked is True + assert response.validation_errors == ["validation_errors_value"] def test_update_app_field_headers(): @@ -5216,6 +5226,7 @@ def test_get_agent(request_type, transport: str = "grpc"): guardrails=["guardrails_value"], etag="etag_value", generated_summary="generated_summary_value", + validation_errors=["validation_errors_value"], ) response = client.get_agent(request) @@ -5236,6 +5247,7 @@ def test_get_agent(request_type, transport: str = "grpc"): assert response.guardrails == ["guardrails_value"] assert response.etag == "etag_value" assert response.generated_summary == "generated_summary_value" + assert response.validation_errors == ["validation_errors_value"] def test_get_agent_non_empty_request_with_auto_populated_field(): @@ -5374,6 +5386,7 @@ async def test_get_agent_async(request_type, transport: str = "grpc_asyncio"): guardrails=["guardrails_value"], etag="etag_value", generated_summary="generated_summary_value", + validation_errors=["validation_errors_value"], ) ) response = await client.get_agent(request) @@ -5395,6 +5408,7 @@ async def test_get_agent_async(request_type, transport: str = "grpc_asyncio"): assert response.guardrails == ["guardrails_value"] assert response.etag == "etag_value" assert response.generated_summary == "generated_summary_value" + assert response.validation_errors == ["validation_errors_value"] def test_get_agent_field_headers(): @@ -5566,6 +5580,7 @@ def test_create_agent(request_type, transport: str = "grpc"): guardrails=["guardrails_value"], etag="etag_value", generated_summary="generated_summary_value", + validation_errors=["validation_errors_value"], ) response = client.create_agent(request) @@ -5586,6 +5601,7 @@ def test_create_agent(request_type, transport: str = "grpc"): assert response.guardrails == ["guardrails_value"] assert response.etag == "etag_value" assert response.generated_summary == "generated_summary_value" + assert response.validation_errors == ["validation_errors_value"] def test_create_agent_non_empty_request_with_auto_populated_field(): @@ -5728,6 +5744,7 @@ async def test_create_agent_async(request_type, transport: str = "grpc_asyncio") guardrails=["guardrails_value"], etag="etag_value", generated_summary="generated_summary_value", + validation_errors=["validation_errors_value"], ) ) response = await client.create_agent(request) @@ -5749,6 +5766,7 @@ async def test_create_agent_async(request_type, transport: str = "grpc_asyncio") assert response.guardrails == ["guardrails_value"] assert response.etag == "etag_value" assert response.generated_summary == "generated_summary_value" + assert response.validation_errors == ["validation_errors_value"] def test_create_agent_field_headers(): @@ -5940,6 +5958,7 @@ def test_update_agent(request_type, transport: str = "grpc"): guardrails=["guardrails_value"], etag="etag_value", generated_summary="generated_summary_value", + validation_errors=["validation_errors_value"], ) response = client.update_agent(request) @@ -5960,6 +5979,7 @@ def test_update_agent(request_type, transport: str = "grpc"): assert response.guardrails == ["guardrails_value"] assert response.etag == "etag_value" assert response.generated_summary == "generated_summary_value" + assert response.validation_errors == ["validation_errors_value"] def test_update_agent_non_empty_request_with_auto_populated_field(): @@ -6096,6 +6116,7 @@ async def test_update_agent_async(request_type, transport: str = "grpc_asyncio") guardrails=["guardrails_value"], etag="etag_value", generated_summary="generated_summary_value", + validation_errors=["validation_errors_value"], ) ) response = await client.update_agent(request) @@ -6117,6 +6138,7 @@ async def test_update_agent_async(request_type, transport: str = "grpc_asyncio") assert response.guardrails == ["guardrails_value"] assert response.etag == "etag_value" assert response.generated_summary == "generated_summary_value" + assert response.validation_errors == ["validation_errors_value"] def test_update_agent_field_headers(): @@ -32266,6 +32288,7 @@ async def test_get_app_empty_call_grpc_asyncio(): etag="etag_value", deployment_count=1737, locked=True, + validation_errors=["validation_errors_value"], ) ) await client.get_app(request=None) @@ -32326,6 +32349,7 @@ async def test_update_app_empty_call_grpc_asyncio(): etag="etag_value", deployment_count=1737, locked=True, + validation_errors=["validation_errors_value"], ) ) await client.update_app(request=None) @@ -32516,6 +32540,7 @@ async def test_get_agent_empty_call_grpc_asyncio(): guardrails=["guardrails_value"], etag="etag_value", generated_summary="generated_summary_value", + validation_errors=["validation_errors_value"], ) ) await client.get_agent(request=None) @@ -32550,6 +32575,7 @@ async def test_create_agent_empty_call_grpc_asyncio(): guardrails=["guardrails_value"], etag="etag_value", generated_summary="generated_summary_value", + validation_errors=["validation_errors_value"], ) ) await client.create_agent(request=None) @@ -32584,6 +32610,7 @@ async def test_update_agent_empty_call_grpc_asyncio(): guardrails=["guardrails_value"], etag="etag_value", generated_summary="generated_summary_value", + validation_errors=["validation_errors_value"], ) ) await client.update_agent(request=None) @@ -33842,6 +33869,7 @@ def test_get_app_rest_call_success(request_type): etag="etag_value", deployment_count=1737, locked=True, + validation_errors=["validation_errors_value"], ) # Wrap the value into a proper Response obj @@ -33869,6 +33897,7 @@ def test_get_app_rest_call_success(request_type): assert response.etag == "etag_value" assert response.deployment_count == 1737 assert response.locked is True + assert response.validation_errors == ["validation_errors_value"] @pytest.mark.parametrize("null_interceptor", [True, False]) @@ -34006,6 +34035,7 @@ def test_create_app_rest_call_success(request_type): "gcs_bucket": "gcs_bucket_value", "gcs_path_prefix": "gcs_path_prefix_value", }, + "unredacted_audio_recording_config": {}, "bigquery_export_settings": { "enabled": True, "project": "project_value", @@ -34115,6 +34145,9 @@ def test_create_app_rest_call_success(request_type): "private_key": "private_key_value", "passphrase": "passphrase_value", }, + "vpc_sc_settings": { + "allowed_origins": ["allowed_origins_value1", "allowed_origins_value2"] + }, "locked": True, "evaluation_personas": [ { @@ -34134,7 +34167,28 @@ def test_create_app_rest_call_success(request_type): "golden_run_method": 1, "golden_evaluation_tool_call_behaviour": 1, "scenario_evaluation_tool_call_behaviour": 1, + "metrics_config": { + "golden_metrics_config": { + "semantic_similarity_metrics_config": { + "enable_semantic_similarity_metrics": True + }, + "tool_correctness_metrics_config": { + "enable_tool_correctness_metrics": True + }, + "step_tool_correctness_metrics_config": {}, + }, + "scenario_metrics_config": { + "user_goal_met_metrics_config": { + "enable_user_goal_met_metrics": True + }, + "expectations_met_metrics_config": { + "enable_expectations_met_metrics": True + }, + }, + }, + "scenario_execution_mode": 1, }, + "validation_errors": ["validation_errors_value1", "validation_errors_value2"], } # The version of a generated dependency at test runtime may differ from the version used during generation. # Delete any fields which are not present in the current runtime dependency @@ -34361,6 +34415,7 @@ def test_update_app_rest_call_success(request_type): "gcs_bucket": "gcs_bucket_value", "gcs_path_prefix": "gcs_path_prefix_value", }, + "unredacted_audio_recording_config": {}, "bigquery_export_settings": { "enabled": True, "project": "project_value", @@ -34470,6 +34525,9 @@ def test_update_app_rest_call_success(request_type): "private_key": "private_key_value", "passphrase": "passphrase_value", }, + "vpc_sc_settings": { + "allowed_origins": ["allowed_origins_value1", "allowed_origins_value2"] + }, "locked": True, "evaluation_personas": [ { @@ -34489,7 +34547,28 @@ def test_update_app_rest_call_success(request_type): "golden_run_method": 1, "golden_evaluation_tool_call_behaviour": 1, "scenario_evaluation_tool_call_behaviour": 1, + "metrics_config": { + "golden_metrics_config": { + "semantic_similarity_metrics_config": { + "enable_semantic_similarity_metrics": True + }, + "tool_correctness_metrics_config": { + "enable_tool_correctness_metrics": True + }, + "step_tool_correctness_metrics_config": {}, + }, + "scenario_metrics_config": { + "user_goal_met_metrics_config": { + "enable_user_goal_met_metrics": True + }, + "expectations_met_metrics_config": { + "enable_expectations_met_metrics": True + }, + }, + }, + "scenario_execution_mode": 1, }, + "validation_errors": ["validation_errors_value1", "validation_errors_value2"], } # The version of a generated dependency at test runtime may differ from the version used during generation. # Delete any fields which are not present in the current runtime dependency @@ -34575,6 +34654,7 @@ def get_message_fields(field): etag="etag_value", deployment_count=1737, locked=True, + validation_errors=["validation_errors_value"], ) # Wrap the value into a proper Response obj @@ -34602,6 +34682,7 @@ def get_message_fields(field): assert response.etag == "etag_value" assert response.deployment_count == 1737 assert response.locked is True + assert response.validation_errors == ["validation_errors_value"] @pytest.mark.parametrize("null_interceptor", [True, False]) @@ -35576,6 +35657,7 @@ def test_get_agent_rest_call_success(request_type): guardrails=["guardrails_value"], etag="etag_value", generated_summary="generated_summary_value", + validation_errors=["validation_errors_value"], ) # Wrap the value into a proper Response obj @@ -35601,6 +35683,7 @@ def test_get_agent_rest_call_success(request_type): assert response.guardrails == ["guardrails_value"] assert response.etag == "etag_value" assert response.generated_summary == "generated_summary_value" + assert response.validation_errors == ["validation_errors_value"] @pytest.mark.parametrize("null_interceptor", [True, False]) @@ -35712,6 +35795,7 @@ def test_create_agent_rest_call_success(request_type): "input_variable_mapping": {}, "output_variable_mapping": {}, "respect_response_interruption_settings": True, + "language_code_variable": "language_code_variable_value", }, "name": "name_value", "display_name": "display_name_value", @@ -35755,6 +35839,7 @@ def test_create_agent_rest_call_success(request_type): "direction": 1, } ], + "validation_errors": ["validation_errors_value1", "validation_errors_value2"], } # The version of a generated dependency at test runtime may differ from the version used during generation. # Delete any fields which are not present in the current runtime dependency @@ -35838,6 +35923,7 @@ def get_message_fields(field): guardrails=["guardrails_value"], etag="etag_value", generated_summary="generated_summary_value", + validation_errors=["validation_errors_value"], ) # Wrap the value into a proper Response obj @@ -35863,6 +35949,7 @@ def get_message_fields(field): assert response.guardrails == ["guardrails_value"] assert response.etag == "etag_value" assert response.generated_summary == "generated_summary_value" + assert response.validation_errors == ["validation_errors_value"] @pytest.mark.parametrize("null_interceptor", [True, False]) @@ -35984,6 +36071,7 @@ def test_update_agent_rest_call_success(request_type): "input_variable_mapping": {}, "output_variable_mapping": {}, "respect_response_interruption_settings": True, + "language_code_variable": "language_code_variable_value", }, "name": "projects/sample1/locations/sample2/apps/sample3/agents/sample4", "display_name": "display_name_value", @@ -36027,6 +36115,7 @@ def test_update_agent_rest_call_success(request_type): "direction": 1, } ], + "validation_errors": ["validation_errors_value1", "validation_errors_value2"], } # The version of a generated dependency at test runtime may differ from the version used during generation. # Delete any fields which are not present in the current runtime dependency @@ -36110,6 +36199,7 @@ def get_message_fields(field): guardrails=["guardrails_value"], etag="etag_value", generated_summary="generated_summary_value", + validation_errors=["validation_errors_value"], ) # Wrap the value into a proper Response obj @@ -36135,6 +36225,7 @@ def get_message_fields(field): assert response.guardrails == ["guardrails_value"] assert response.etag == "etag_value" assert response.generated_summary == "generated_summary_value" + assert response.validation_errors == ["validation_errors_value"] @pytest.mark.parametrize("null_interceptor", [True, False]) @@ -38225,9 +38316,11 @@ def test_create_tool_rest_call_success(request_type): "name": "name_value", "python_code": "python_code_value", "description": "description_value", + "service_directory_config": {}, }, "mcp_tool": { "name": "name_value", + "name_override": "name_override_value", "description": "description_value", "input_schema": {}, "output_schema": {}, @@ -38236,6 +38329,7 @@ def test_create_tool_rest_call_success(request_type): "tls_config": {}, "service_directory_config": {}, "custom_headers": {}, + "state": 1, }, "file_search_tool": { "corpus_type": 1, @@ -38263,10 +38357,44 @@ def test_create_tool_rest_call_success(request_type): "mode": 1, "python_script": "python_script_value", }, + "text_response_config": { + "type_": 1, + "static_text": "static_text_value", + "text_response_instruction": "text_response_instruction_value", + }, + }, + "remote_agent_tool": { + "name": "name_value", + "description": "description_value", + "agent_card": { + "name": "name_value", + "description": "description_value", + "supported_interfaces": [ + { + "url": "url_value", + "protocol_binding": "protocol_binding_value", + "tenant": "tenant_value", + "protocol_version": "protocol_version_value", + } + ], + "version": "version_value", + "skills": [ + { + "id": "id_value", + "name": "name_value", + "description": "description_value", + "tags": ["tags_value1", "tags_value2"], + "examples": ["examples_value1", "examples_value2"], + "input_modes": ["input_modes_value1", "input_modes_value2"], + "output_modes": ["output_modes_value1", "output_modes_value2"], + } + ], + }, }, "name": "name_value", "display_name": "display_name_value", "execution_type": 1, + "timeout": {"seconds": 751, "nanos": 543}, "create_time": {}, "update_time": {}, "etag": "etag_value", @@ -38664,9 +38792,11 @@ def test_update_tool_rest_call_success(request_type): "name": "name_value", "python_code": "python_code_value", "description": "description_value", + "service_directory_config": {}, }, "mcp_tool": { "name": "name_value", + "name_override": "name_override_value", "description": "description_value", "input_schema": {}, "output_schema": {}, @@ -38675,6 +38805,7 @@ def test_update_tool_rest_call_success(request_type): "tls_config": {}, "service_directory_config": {}, "custom_headers": {}, + "state": 1, }, "file_search_tool": { "corpus_type": 1, @@ -38702,10 +38833,44 @@ def test_update_tool_rest_call_success(request_type): "mode": 1, "python_script": "python_script_value", }, + "text_response_config": { + "type_": 1, + "static_text": "static_text_value", + "text_response_instruction": "text_response_instruction_value", + }, + }, + "remote_agent_tool": { + "name": "name_value", + "description": "description_value", + "agent_card": { + "name": "name_value", + "description": "description_value", + "supported_interfaces": [ + { + "url": "url_value", + "protocol_binding": "protocol_binding_value", + "tenant": "tenant_value", + "protocol_version": "protocol_version_value", + } + ], + "version": "version_value", + "skills": [ + { + "id": "id_value", + "name": "name_value", + "description": "description_value", + "tags": ["tags_value1", "tags_value2"], + "examples": ["examples_value1", "examples_value2"], + "input_modes": ["input_modes_value1", "input_modes_value2"], + "output_modes": ["output_modes_value1", "output_modes_value2"], + } + ], + }, }, "name": "projects/sample1/locations/sample2/apps/sample3/tools/sample4", "display_name": "display_name_value", "execution_type": 1, + "timeout": {"seconds": 751, "nanos": 543}, "create_time": {}, "update_time": {}, "etag": "etag_value", @@ -40258,6 +40423,18 @@ def test_create_deployment_rest_call_success(request_type): "create_time": {"seconds": 751, "nanos": 543}, "update_time": {}, "etag": "etag_value", + "experiment_config": { + "version_release": { + "state": 1, + "traffic_allocations": [ + { + "id": "id_value", + "traffic_percentage": 1884, + "app_version": "app_version_value", + } + ], + } + }, } # The version of a generated dependency at test runtime may differ from the version used during generation. # Delete any fields which are not present in the current runtime dependency @@ -40500,6 +40677,18 @@ def test_update_deployment_rest_call_success(request_type): "create_time": {"seconds": 751, "nanos": 543}, "update_time": {}, "etag": "etag_value", + "experiment_config": { + "version_release": { + "state": 1, + "traffic_allocations": [ + { + "id": "id_value", + "traffic_percentage": 1884, + "app_version": "app_version_value", + } + ], + } + }, } # The version of a generated dependency at test runtime may differ from the version used during generation. # Delete any fields which are not present in the current runtime dependency @@ -41119,6 +41308,45 @@ def test_create_toolset_rest_call_success(request_type): ] }, "custom_headers": {}, + "tool_overrides": [ + { + "tool": "tool_value", + "name_override": "name_override_value", + "description_override": "description_override_value", + "snapshot": { + "description": "description_value", + "input_schema": { + "type_": 1, + "properties": {}, + "required": ["required_value1", "required_value2"], + "description": "description_value", + "items": {}, + "nullable": True, + "unique_items": True, + "prefix_items": {}, + "additional_properties": {}, + "any_of": {}, + "enum": ["enum_value1", "enum_value2"], + "default": { + "null_value": 0, + "number_value": 0.1285, + "string_value": "string_value_value", + "bool_value": True, + "struct_value": {"fields": {}}, + "list_value": {"values": {}}, + }, + "ref": "ref_value", + "defs": {}, + "title": "title_value", + "min_items": 965, + "max_items": 967, + "minimum": 0.764, + "maximum": 0.766, + }, + "output_schema": {}, + }, + } + ], }, "open_api_toolset": { "open_api_schema": "open_api_schema_value", @@ -41405,6 +41633,45 @@ def test_update_toolset_rest_call_success(request_type): ] }, "custom_headers": {}, + "tool_overrides": [ + { + "tool": "tool_value", + "name_override": "name_override_value", + "description_override": "description_override_value", + "snapshot": { + "description": "description_value", + "input_schema": { + "type_": 1, + "properties": {}, + "required": ["required_value1", "required_value2"], + "description": "description_value", + "items": {}, + "nullable": True, + "unique_items": True, + "prefix_items": {}, + "additional_properties": {}, + "any_of": {}, + "enum": ["enum_value1", "enum_value2"], + "default": { + "null_value": 0, + "number_value": 0.1285, + "string_value": "string_value_value", + "bool_value": True, + "struct_value": {"fields": {}}, + "list_value": {"values": {}}, + }, + "ref": "ref_value", + "defs": {}, + "title": "title_value", + "min_items": 965, + "max_items": 967, + "minimum": 0.764, + "maximum": 0.766, + }, + "output_schema": {}, + }, + } + ], }, "open_api_toolset": { "open_api_schema": "open_api_schema_value", @@ -42092,6 +42359,7 @@ def test_create_app_version_rest_call_success(request_type): "gcs_bucket": "gcs_bucket_value", "gcs_path_prefix": "gcs_path_prefix_value", }, + "unredacted_audio_recording_config": {}, "bigquery_export_settings": { "enabled": True, "project": "project_value", @@ -42203,6 +42471,12 @@ def test_create_app_version_rest_call_success(request_type): "private_key": "private_key_value", "passphrase": "passphrase_value", }, + "vpc_sc_settings": { + "allowed_origins": [ + "allowed_origins_value1", + "allowed_origins_value2", + ] + }, "locked": True, "evaluation_personas": [ { @@ -42222,7 +42496,31 @@ def test_create_app_version_rest_call_success(request_type): "golden_run_method": 1, "golden_evaluation_tool_call_behaviour": 1, "scenario_evaluation_tool_call_behaviour": 1, + "metrics_config": { + "golden_metrics_config": { + "semantic_similarity_metrics_config": { + "enable_semantic_similarity_metrics": True + }, + "tool_correctness_metrics_config": { + "enable_tool_correctness_metrics": True + }, + "step_tool_correctness_metrics_config": {}, + }, + "scenario_metrics_config": { + "user_goal_met_metrics_config": { + "enable_user_goal_met_metrics": True + }, + "expectations_met_metrics_config": { + "enable_expectations_met_metrics": True + }, + }, + }, + "scenario_execution_mode": 1, }, + "validation_errors": [ + "validation_errors_value1", + "validation_errors_value2", + ], }, "agents": [ { @@ -42234,6 +42532,7 @@ def test_create_app_version_rest_call_success(request_type): "input_variable_mapping": {}, "output_variable_mapping": {}, "respect_response_interruption_settings": True, + "language_code_variable": "language_code_variable_value", }, "name": "name_value", "display_name": "display_name_value", @@ -42281,6 +42580,10 @@ def test_create_app_version_rest_call_success(request_type): "direction": 1, } ], + "validation_errors": [ + "validation_errors_value1", + "validation_errors_value2", + ], } ], "tools": [ @@ -42451,9 +42754,11 @@ def test_create_app_version_rest_call_success(request_type): "name": "name_value", "python_code": "python_code_value", "description": "description_value", + "service_directory_config": {}, }, "mcp_tool": { "name": "name_value", + "name_override": "name_override_value", "description": "description_value", "input_schema": {}, "output_schema": {}, @@ -42462,6 +42767,7 @@ def test_create_app_version_rest_call_success(request_type): "tls_config": {}, "service_directory_config": {}, "custom_headers": {}, + "state": 1, }, "file_search_tool": { "corpus_type": 1, @@ -42492,10 +42798,50 @@ def test_create_app_version_rest_call_success(request_type): "mode": 1, "python_script": "python_script_value", }, + "text_response_config": { + "type_": 1, + "static_text": "static_text_value", + "text_response_instruction": "text_response_instruction_value", + }, + }, + "remote_agent_tool": { + "name": "name_value", + "description": "description_value", + "agent_card": { + "name": "name_value", + "description": "description_value", + "supported_interfaces": [ + { + "url": "url_value", + "protocol_binding": "protocol_binding_value", + "tenant": "tenant_value", + "protocol_version": "protocol_version_value", + } + ], + "version": "version_value", + "skills": [ + { + "id": "id_value", + "name": "name_value", + "description": "description_value", + "tags": ["tags_value1", "tags_value2"], + "examples": ["examples_value1", "examples_value2"], + "input_modes": [ + "input_modes_value1", + "input_modes_value2", + ], + "output_modes": [ + "output_modes_value1", + "output_modes_value2", + ], + } + ], + }, }, "name": "name_value", "display_name": "display_name_value", "execution_type": 1, + "timeout": {}, "create_time": {}, "update_time": {}, "etag": "etag_value", @@ -42628,6 +42974,18 @@ def test_create_app_version_rest_call_success(request_type): "service_directory_config": {}, "tls_config": {}, "custom_headers": {}, + "tool_overrides": [ + { + "tool": "tool_value", + "name_override": "name_override_value", + "description_override": "description_override_value", + "snapshot": { + "description": "description_value", + "input_schema": {}, + "output_schema": {}, + }, + } + ], }, "open_api_toolset": { "open_api_schema": "open_api_schema_value", diff --git a/packages/google-cloud-ces/tests/unit/gapic/ces_v1beta/test_evaluation_service.py b/packages/google-cloud-ces/tests/unit/gapic/ces_v1beta/test_evaluation_service.py index 3fb631bf3d04..ec4d158b24a6 100644 --- a/packages/google-cloud-ces/tests/unit/gapic/ces_v1beta/test_evaluation_service.py +++ b/packages/google-cloud-ces/tests/unit/gapic/ces_v1beta/test_evaluation_service.py @@ -76,6 +76,7 @@ app, common, evaluation, + evaluation_metrics_config, evaluation_service, example, fakes, @@ -6225,7 +6226,7 @@ def test_get_evaluation_result(request_type, transport: str = "grpc"): app_version="app_version_value", app_version_display_name="app_version_display_name_value", changelog="changelog_value", - execution_state=evaluation.EvaluationResult.ExecutionState.RUNNING, + execution_state=evaluation.EvaluationResult.ExecutionState.QUEUED, golden_run_method=golden_run.GoldenRunMethod.STABLE, ) response = client.get_evaluation_result(request) @@ -6246,9 +6247,7 @@ def test_get_evaluation_result(request_type, transport: str = "grpc"): assert response.app_version == "app_version_value" assert response.app_version_display_name == "app_version_display_name_value" assert response.changelog == "changelog_value" - assert ( - response.execution_state == evaluation.EvaluationResult.ExecutionState.RUNNING - ) + assert response.execution_state == evaluation.EvaluationResult.ExecutionState.QUEUED assert response.golden_run_method == golden_run.GoldenRunMethod.STABLE @@ -6400,7 +6399,7 @@ async def test_get_evaluation_result_async( app_version="app_version_value", app_version_display_name="app_version_display_name_value", changelog="changelog_value", - execution_state=evaluation.EvaluationResult.ExecutionState.RUNNING, + execution_state=evaluation.EvaluationResult.ExecutionState.QUEUED, golden_run_method=golden_run.GoldenRunMethod.STABLE, ) ) @@ -6422,9 +6421,7 @@ async def test_get_evaluation_result_async( assert response.app_version == "app_version_value" assert response.app_version_display_name == "app_version_display_name_value" assert response.changelog == "changelog_value" - assert ( - response.execution_state == evaluation.EvaluationResult.ExecutionState.RUNNING - ) + assert response.execution_state == evaluation.EvaluationResult.ExecutionState.QUEUED assert response.golden_run_method == golden_run.GoldenRunMethod.STABLE @@ -6977,10 +6974,11 @@ def test_get_evaluation_run(request_type, transport: str = "grpc"): evaluations=["evaluations_value"], evaluation_dataset="evaluation_dataset_value", evaluation_type=evaluation.EvaluationRun.EvaluationType.GOLDEN, - state=evaluation.EvaluationRun.EvaluationRunState.RUNNING, + state=evaluation.EvaluationRun.EvaluationRunState.QUEUED, run_count=989, scheduled_evaluation_run="scheduled_evaluation_run_value", golden_run_method=golden_run.GoldenRunMethod.STABLE, + operation="operation_value", ) response = client.get_evaluation_run(request) @@ -7002,10 +7000,11 @@ def test_get_evaluation_run(request_type, transport: str = "grpc"): assert response.evaluations == ["evaluations_value"] assert response.evaluation_dataset == "evaluation_dataset_value" assert response.evaluation_type == evaluation.EvaluationRun.EvaluationType.GOLDEN - assert response.state == evaluation.EvaluationRun.EvaluationRunState.RUNNING + assert response.state == evaluation.EvaluationRun.EvaluationRunState.QUEUED assert response.run_count == 989 assert response.scheduled_evaluation_run == "scheduled_evaluation_run_value" assert response.golden_run_method == golden_run.GoldenRunMethod.STABLE + assert response.operation == "operation_value" def test_get_evaluation_run_non_empty_request_with_auto_populated_field(): @@ -7155,10 +7154,11 @@ async def test_get_evaluation_run_async(request_type, transport: str = "grpc_asy evaluations=["evaluations_value"], evaluation_dataset="evaluation_dataset_value", evaluation_type=evaluation.EvaluationRun.EvaluationType.GOLDEN, - state=evaluation.EvaluationRun.EvaluationRunState.RUNNING, + state=evaluation.EvaluationRun.EvaluationRunState.QUEUED, run_count=989, scheduled_evaluation_run="scheduled_evaluation_run_value", golden_run_method=golden_run.GoldenRunMethod.STABLE, + operation="operation_value", ) ) response = await client.get_evaluation_run(request) @@ -7181,10 +7181,11 @@ async def test_get_evaluation_run_async(request_type, transport: str = "grpc_asy assert response.evaluations == ["evaluations_value"] assert response.evaluation_dataset == "evaluation_dataset_value" assert response.evaluation_type == evaluation.EvaluationRun.EvaluationType.GOLDEN - assert response.state == evaluation.EvaluationRun.EvaluationRunState.RUNNING + assert response.state == evaluation.EvaluationRun.EvaluationRunState.QUEUED assert response.run_count == 989 assert response.scheduled_evaluation_run == "scheduled_evaluation_run_value" assert response.golden_run_method == golden_run.GoldenRunMethod.STABLE + assert response.operation == "operation_value" def test_get_evaluation_run_field_headers(): @@ -14302,13 +14303,79 @@ async def test_export_evaluations_flattened_error_async(): ) -def test_run_evaluation_rest_use_cached_wrapped_rpc(): +@pytest.mark.parametrize( + "request_type", + [ + evaluation_service.ExportEvaluationRunsRequest(), + {}, + ], +) +def test_export_evaluation_runs(request_type, transport: str = "grpc"): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.export_evaluation_runs), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/spam") + response = client.export_evaluation_runs(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + request = evaluation_service.ExportEvaluationRunsRequest() + assert args[0] == request + + # Establish that the response is the type that we expect. + assert isinstance(response, future.Future) + + +def test_export_evaluation_runs_non_empty_request_with_auto_populated_field(): + # This test is a coverage failsafe to make sure that UUID4 fields are + # automatically populated, according to AIP-4235, with non-empty requests. + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Populate all string fields in the request which are not UUID4 + # since we want to check that UUID4 are populated automatically + # if they meet the requirements of AIP 4235. + request = evaluation_service.ExportEvaluationRunsRequest( + parent="parent_value", + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.export_evaluation_runs), "__call__" + ) as call: + call.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client.export_evaluation_runs(request=request) + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = evaluation_service.ExportEvaluationRunsRequest( + parent="parent_value", + ) + assert args[0] == request_msg + + +def test_export_evaluation_runs_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport="grpc", ) # Should wrap all calls on client creation @@ -14316,177 +14383,47 @@ def test_run_evaluation_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert client._transport.run_evaluation in client._transport._wrapped_methods + assert ( + client._transport.export_evaluation_runs + in client._transport._wrapped_methods + ) # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.run_evaluation] = mock_rpc - + client._transport._wrapped_methods[client._transport.export_evaluation_runs] = ( + mock_rpc + ) request = {} - client.run_evaluation(request) + client.export_evaluation_runs(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - # Operation methods build a cached wrapper on first rpc call - # subsequent calls should use the cached wrapper + # Operation methods call wrapper_fn to build a cached + # client._transport.operations_client instance on first rpc call. + # Subsequent calls should use the cached wrapper wrapper_fn.reset_mock() - client.run_evaluation(request) + client.export_evaluation_runs(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_run_evaluation_rest_required_fields( - request_type=evaluation.RunEvaluationRequest, +@pytest.mark.asyncio +async def test_export_evaluation_runs_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", ): - transport_class = transports.EvaluationServiceRestTransport - - request_init = {} - request_init["app"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) - ) - - # verify fields with default values are dropped - - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).run_evaluation._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) - - # verify required fields with default values are now present - - jsonified_request["app"] = "app_value" - - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).run_evaluation._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) - - # verify required fields with non-default values are left alone - assert "app" in jsonified_request - assert jsonified_request["app"] == "app_value" - - client = EvaluationServiceClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", - ) - request = request_type(**request_init) - - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "post", - "query_params": pb_request, - } - transcode_result["body"] = pb_request - transcode.return_value = transcode_result - - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) - - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - - response = client.run_evaluation(request) - - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) - - -def test_run_evaluation_rest_unset_required_fields(): - transport = transports.EvaluationServiceRestTransport( - credentials=ga_credentials.AnonymousCredentials - ) - - unset_fields = transport.run_evaluation._get_unset_required_fields({}) - assert set(unset_fields) == (set(()) & set(("app",))) - - -def test_run_evaluation_rest_flattened(): - client = EvaluationServiceClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", - ) - - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - - # get arguments that satisfy an http rule for this method - sample_request = {"app": "projects/sample1/locations/sample2/apps/sample3"} - - # get truthy value for each flattened field - mock_args = dict( - app="app_value", - ) - mock_args.update(sample_request) - - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - - client.run_evaluation(**mock_args) - - # Establish that the underlying call was made with the expected - # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1beta/{app=projects/*/locations/*/apps/*}:runEvaluation" - % client.transport._host, - args[1], - ) - - -def test_run_evaluation_rest_flattened_error(transport: str = "rest"): - client = EvaluationServiceClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, - ) - - # Attempting to call a method with both a request object and flattened - # fields is an error. - with pytest.raises(ValueError): - client.run_evaluation( - evaluation.RunEvaluationRequest(), - app="app_value", - ) - - -def test_upload_evaluation_audio_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call - with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: - client = EvaluationServiceClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = EvaluationServiceAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, ) # Should wrap all calls on client creation @@ -14495,40 +14432,1598 @@ def test_upload_evaluation_audio_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.upload_evaluation_audio - in client._transport._wrapped_methods + client._client._transport.export_evaluation_runs + in client._client._transport._wrapped_methods ) # Replace cached wrapped function with mock - mock_rpc = mock.Mock() - mock_rpc.return_value.name = ( - "foo" # operation_request.operation in compute client(s) expect a string. - ) - client._transport._wrapped_methods[ - client._transport.upload_evaluation_audio + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.export_evaluation_runs ] = mock_rpc request = {} - client.upload_evaluation_audio(request) + await client.export_evaluation_runs(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.upload_evaluation_audio(request) + # Operation methods call wrapper_fn to build a cached + # client._transport.operations_client instance on first rpc call. + # Subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + await client.export_evaluation_runs(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_upload_evaluation_audio_rest_required_fields( - request_type=evaluation_service.UploadEvaluationAudioRequest, +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + evaluation_service.ExportEvaluationRunsRequest(), + {}, + ], +) +async def test_export_evaluation_runs_async( + request_type, transport: str = "grpc_asyncio" ): - transport_class = transports.EvaluationServiceRestTransport + client = EvaluationServiceAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) + + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.export_evaluation_runs), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + response = await client.export_evaluation_runs(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + request = evaluation_service.ExportEvaluationRunsRequest() + assert args[0] == request + + # Establish that the response is the type that we expect. + assert isinstance(response, future.Future) + + +def test_export_evaluation_runs_field_headers(): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + ) + + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = evaluation_service.ExportEvaluationRunsRequest() + + request.parent = "parent_value" + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.export_evaluation_runs), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.export_evaluation_runs(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert args[0] == request + + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "parent=parent_value", + ) in kw["metadata"] + + +@pytest.mark.asyncio +async def test_export_evaluation_runs_field_headers_async(): + client = EvaluationServiceAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = evaluation_service.ExportEvaluationRunsRequest() + + request.parent = "parent_value" + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.export_evaluation_runs), "__call__" + ) as call: + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/op") + ) + await client.export_evaluation_runs(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert args[0] == request + + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "parent=parent_value", + ) in kw["metadata"] + + +def test_export_evaluation_runs_flattened(): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.export_evaluation_runs), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/op") + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + client.export_evaluation_runs( + parent="parent_value", + names=["names_value"], + ) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + arg = args[0].parent + mock_val = "parent_value" + assert arg == mock_val + arg = args[0].names + mock_val = ["names_value"] + assert arg == mock_val + + +def test_export_evaluation_runs_flattened_error(): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.export_evaluation_runs( + evaluation_service.ExportEvaluationRunsRequest(), + parent="parent_value", + names=["names_value"], + ) + + +@pytest.mark.asyncio +async def test_export_evaluation_runs_flattened_async(): + client = EvaluationServiceAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.export_evaluation_runs), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/op") + + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + response = await client.export_evaluation_runs( + parent="parent_value", + names=["names_value"], + ) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + arg = args[0].parent + mock_val = "parent_value" + assert arg == mock_val + arg = args[0].names + mock_val = ["names_value"] + assert arg == mock_val + + +@pytest.mark.asyncio +async def test_export_evaluation_runs_flattened_error_async(): + client = EvaluationServiceAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + await client.export_evaluation_runs( + evaluation_service.ExportEvaluationRunsRequest(), + parent="parent_value", + names=["names_value"], + ) + + +@pytest.mark.parametrize( + "request_type", + [ + evaluation_service.ExportEvaluationResultsRequest(), + {}, + ], +) +def test_export_evaluation_results(request_type, transport: str = "grpc"): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.export_evaluation_results), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/spam") + response = client.export_evaluation_results(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + request = evaluation_service.ExportEvaluationResultsRequest() + assert args[0] == request + + # Establish that the response is the type that we expect. + assert isinstance(response, future.Future) + + +def test_export_evaluation_results_non_empty_request_with_auto_populated_field(): + # This test is a coverage failsafe to make sure that UUID4 fields are + # automatically populated, according to AIP-4235, with non-empty requests. + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Populate all string fields in the request which are not UUID4 + # since we want to check that UUID4 are populated automatically + # if they meet the requirements of AIP 4235. + request = evaluation_service.ExportEvaluationResultsRequest( + parent="parent_value", + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.export_evaluation_results), "__call__" + ) as call: + call.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client.export_evaluation_results(request=request) + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = evaluation_service.ExportEvaluationResultsRequest( + parent="parent_value", + ) + assert args[0] == request_msg + + +def test_export_evaluation_results_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.export_evaluation_results + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.export_evaluation_results + ] = mock_rpc + request = {} + client.export_evaluation_results(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + # Operation methods call wrapper_fn to build a cached + # client._transport.operations_client instance on first rpc call. + # Subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.export_evaluation_results(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +@pytest.mark.asyncio +async def test_export_evaluation_results_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", +): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = EvaluationServiceAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._client._transport.export_evaluation_results + in client._client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.export_evaluation_results + ] = mock_rpc + + request = {} + await client.export_evaluation_results(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + # Operation methods call wrapper_fn to build a cached + # client._transport.operations_client instance on first rpc call. + # Subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + await client.export_evaluation_results(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + evaluation_service.ExportEvaluationResultsRequest(), + {}, + ], +) +async def test_export_evaluation_results_async( + request_type, transport: str = "grpc_asyncio" +): + client = EvaluationServiceAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) + + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.export_evaluation_results), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + response = await client.export_evaluation_results(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + request = evaluation_service.ExportEvaluationResultsRequest() + assert args[0] == request + + # Establish that the response is the type that we expect. + assert isinstance(response, future.Future) + + +def test_export_evaluation_results_field_headers(): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + ) + + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = evaluation_service.ExportEvaluationResultsRequest() + + request.parent = "parent_value" + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.export_evaluation_results), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.export_evaluation_results(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert args[0] == request + + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "parent=parent_value", + ) in kw["metadata"] + + +@pytest.mark.asyncio +async def test_export_evaluation_results_field_headers_async(): + client = EvaluationServiceAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = evaluation_service.ExportEvaluationResultsRequest() + + request.parent = "parent_value" + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.export_evaluation_results), "__call__" + ) as call: + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/op") + ) + await client.export_evaluation_results(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert args[0] == request + + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "parent=parent_value", + ) in kw["metadata"] + + +def test_export_evaluation_results_flattened(): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.export_evaluation_results), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/op") + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + client.export_evaluation_results( + parent="parent_value", + names=["names_value"], + ) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + arg = args[0].parent + mock_val = "parent_value" + assert arg == mock_val + arg = args[0].names + mock_val = ["names_value"] + assert arg == mock_val + + +def test_export_evaluation_results_flattened_error(): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.export_evaluation_results( + evaluation_service.ExportEvaluationResultsRequest(), + parent="parent_value", + names=["names_value"], + ) + + +@pytest.mark.asyncio +async def test_export_evaluation_results_flattened_async(): + client = EvaluationServiceAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.export_evaluation_results), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/op") + + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + response = await client.export_evaluation_results( + parent="parent_value", + names=["names_value"], + ) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + arg = args[0].parent + mock_val = "parent_value" + assert arg == mock_val + arg = args[0].names + mock_val = ["names_value"] + assert arg == mock_val + + +@pytest.mark.asyncio +async def test_export_evaluation_results_flattened_error_async(): + client = EvaluationServiceAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + await client.export_evaluation_results( + evaluation_service.ExportEvaluationResultsRequest(), + parent="parent_value", + names=["names_value"], + ) + + +@pytest.mark.parametrize( + "request_type", + [ + evaluation_service.RunEvaluationResultMetricsRequest(), + {}, + ], +) +def test_run_evaluation_result_metrics(request_type, transport: str = "grpc"): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.run_evaluation_result_metrics), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/spam") + response = client.run_evaluation_result_metrics(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + request = evaluation_service.RunEvaluationResultMetricsRequest() + assert args[0] == request + + # Establish that the response is the type that we expect. + assert isinstance(response, future.Future) + + +def test_run_evaluation_result_metrics_non_empty_request_with_auto_populated_field(): + # This test is a coverage failsafe to make sure that UUID4 fields are + # automatically populated, according to AIP-4235, with non-empty requests. + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Populate all string fields in the request which are not UUID4 + # since we want to check that UUID4 are populated automatically + # if they meet the requirements of AIP 4235. + request = evaluation_service.RunEvaluationResultMetricsRequest( + evaluation_result_id="evaluation_result_id_value", + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.run_evaluation_result_metrics), "__call__" + ) as call: + call.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client.run_evaluation_result_metrics(request=request) + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = evaluation_service.RunEvaluationResultMetricsRequest( + evaluation_result_id="evaluation_result_id_value", + ) + assert args[0] == request_msg + + +def test_run_evaluation_result_metrics_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.run_evaluation_result_metrics + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.run_evaluation_result_metrics + ] = mock_rpc + request = {} + client.run_evaluation_result_metrics(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + # Operation methods call wrapper_fn to build a cached + # client._transport.operations_client instance on first rpc call. + # Subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.run_evaluation_result_metrics(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +@pytest.mark.asyncio +async def test_run_evaluation_result_metrics_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", +): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = EvaluationServiceAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._client._transport.run_evaluation_result_metrics + in client._client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.run_evaluation_result_metrics + ] = mock_rpc + + request = {} + await client.run_evaluation_result_metrics(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + # Operation methods call wrapper_fn to build a cached + # client._transport.operations_client instance on first rpc call. + # Subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + await client.run_evaluation_result_metrics(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + evaluation_service.RunEvaluationResultMetricsRequest(), + {}, + ], +) +async def test_run_evaluation_result_metrics_async( + request_type, transport: str = "grpc_asyncio" +): + client = EvaluationServiceAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) + + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.run_evaluation_result_metrics), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + response = await client.run_evaluation_result_metrics(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + request = evaluation_service.RunEvaluationResultMetricsRequest() + assert args[0] == request + + # Establish that the response is the type that we expect. + assert isinstance(response, future.Future) + + +def test_run_evaluation_result_metrics_field_headers(): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + ) + + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = evaluation_service.RunEvaluationResultMetricsRequest() + + request.evaluation_result_id = "evaluation_result_id_value" + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.run_evaluation_result_metrics), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.run_evaluation_result_metrics(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert args[0] == request + + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "evaluation_result_id=evaluation_result_id_value", + ) in kw["metadata"] + + +@pytest.mark.asyncio +async def test_run_evaluation_result_metrics_field_headers_async(): + client = EvaluationServiceAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = evaluation_service.RunEvaluationResultMetricsRequest() + + request.evaluation_result_id = "evaluation_result_id_value" + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.run_evaluation_result_metrics), "__call__" + ) as call: + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/op") + ) + await client.run_evaluation_result_metrics(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert args[0] == request + + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "evaluation_result_id=evaluation_result_id_value", + ) in kw["metadata"] + + +def test_run_evaluation_result_metrics_flattened(): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.run_evaluation_result_metrics), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/op") + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + client.run_evaluation_result_metrics( + evaluation_result_id="evaluation_result_id_value", + ) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + arg = args[0].evaluation_result_id + mock_val = "evaluation_result_id_value" + assert arg == mock_val + + +def test_run_evaluation_result_metrics_flattened_error(): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.run_evaluation_result_metrics( + evaluation_service.RunEvaluationResultMetricsRequest(), + evaluation_result_id="evaluation_result_id_value", + ) + + +@pytest.mark.asyncio +async def test_run_evaluation_result_metrics_flattened_async(): + client = EvaluationServiceAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.run_evaluation_result_metrics), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/op") + + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + response = await client.run_evaluation_result_metrics( + evaluation_result_id="evaluation_result_id_value", + ) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + arg = args[0].evaluation_result_id + mock_val = "evaluation_result_id_value" + assert arg == mock_val + + +@pytest.mark.asyncio +async def test_run_evaluation_result_metrics_flattened_error_async(): + client = EvaluationServiceAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + await client.run_evaluation_result_metrics( + evaluation_service.RunEvaluationResultMetricsRequest(), + evaluation_result_id="evaluation_result_id_value", + ) + + +def test_run_evaluation_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert client._transport.run_evaluation in client._transport._wrapped_methods + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[client._transport.run_evaluation] = mock_rpc + + request = {} + client.run_evaluation(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.run_evaluation(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_run_evaluation_rest_required_fields( + request_type=evaluation.RunEvaluationRequest, +): + transport_class = transports.EvaluationServiceRestTransport + + request_init = {} + request_init["app"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).run_evaluation._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["app"] = "app_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).run_evaluation._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "app" in jsonified_request + assert jsonified_request["app"] == "app_value" + + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "post", + "query_params": pb_request, + } + transcode_result["body"] = pb_request + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.run_evaluation(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_run_evaluation_rest_unset_required_fields(): + transport = transports.EvaluationServiceRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.run_evaluation._get_unset_required_fields({}) + assert set(unset_fields) == (set(()) & set(("app",))) + + +def test_run_evaluation_rest_flattened(): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # get arguments that satisfy an http rule for this method + sample_request = {"app": "projects/sample1/locations/sample2/apps/sample3"} + + # get truthy value for each flattened field + mock_args = dict( + app="app_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.run_evaluation(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1beta/{app=projects/*/locations/*/apps/*}:runEvaluation" + % client.transport._host, + args[1], + ) + + +def test_run_evaluation_rest_flattened_error(transport: str = "rest"): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.run_evaluation( + evaluation.RunEvaluationRequest(), + app="app_value", + ) + + +def test_upload_evaluation_audio_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.upload_evaluation_audio + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.upload_evaluation_audio + ] = mock_rpc + + request = {} + client.upload_evaluation_audio(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.upload_evaluation_audio(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_upload_evaluation_audio_rest_required_fields( + request_type=evaluation_service.UploadEvaluationAudioRequest, +): + transport_class = transports.EvaluationServiceRestTransport + + request_init = {} + request_init["name"] = "" + request_init["audio_content"] = b"" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).upload_evaluation_audio._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["name"] = "name_value" + jsonified_request["audioContent"] = b"audio_content_blob" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).upload_evaluation_audio._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" + assert "audioContent" in jsonified_request + assert jsonified_request["audioContent"] == b"audio_content_blob" + + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = evaluation_service.UploadEvaluationAudioResponse() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "post", + "query_params": pb_request, + } + transcode_result["body"] = pb_request + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = evaluation_service.UploadEvaluationAudioResponse.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.upload_evaluation_audio(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_upload_evaluation_audio_rest_unset_required_fields(): + transport = transports.EvaluationServiceRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.upload_evaluation_audio._get_unset_required_fields({}) + assert set(unset_fields) == ( + set(()) + & set( + ( + "name", + "audioContent", + ) + ) + ) + + +def test_upload_evaluation_audio_rest_flattened(): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = evaluation_service.UploadEvaluationAudioResponse() + + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4" + } + + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + audio_content=b"audio_content_blob", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = evaluation_service.UploadEvaluationAudioResponse.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.upload_evaluation_audio(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1beta/{name=projects/*/locations/*/apps/*/evaluations/*}:uploadEvaluationAudio" + % client.transport._host, + args[1], + ) + + +def test_upload_evaluation_audio_rest_flattened_error(transport: str = "rest"): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.upload_evaluation_audio( + evaluation_service.UploadEvaluationAudioRequest(), + name="name_value", + audio_content=b"audio_content_blob", + ) + + +def test_create_evaluation_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert client._transport.create_evaluation in client._transport._wrapped_methods + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[client._transport.create_evaluation] = ( + mock_rpc + ) + + request = {} + client.create_evaluation(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.create_evaluation(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_create_evaluation_rest_required_fields( + request_type=evaluation_service.CreateEvaluationRequest, +): + transport_class = transports.EvaluationServiceRestTransport + + request_init = {} + request_init["parent"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).create_evaluation._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["parent"] = "parent_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).create_evaluation._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set(("evaluation_id",)) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = gcc_evaluation.Evaluation() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "post", + "query_params": pb_request, + } + transcode_result["body"] = pb_request + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = gcc_evaluation.Evaluation.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.create_evaluation(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_create_evaluation_rest_unset_required_fields(): + transport = transports.EvaluationServiceRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.create_evaluation._get_unset_required_fields({}) + assert set(unset_fields) == ( + set(("evaluationId",)) + & set( + ( + "parent", + "evaluation", + ) + ) + ) + + +def test_create_evaluation_rest_flattened(): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = gcc_evaluation.Evaluation() + + # get arguments that satisfy an http rule for this method + sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} + + # get truthy value for each flattened field + mock_args = dict( + parent="parent_value", + evaluation=gcc_evaluation.Evaluation( + golden=gcc_evaluation.Evaluation.Golden( + turns=[ + gcc_evaluation.Evaluation.GoldenTurn( + steps=[ + gcc_evaluation.Evaluation.Step( + user_input=session_service.SessionInput( + text="text_value" + ) + ) + ] + ) + ] + ) + ), + evaluation_id="evaluation_id_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = gcc_evaluation.Evaluation.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.create_evaluation(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1beta/{parent=projects/*/locations/*/apps/*}/evaluations" + % client.transport._host, + args[1], + ) + + +def test_create_evaluation_rest_flattened_error(transport: str = "rest"): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.create_evaluation( + evaluation_service.CreateEvaluationRequest(), + parent="parent_value", + evaluation=gcc_evaluation.Evaluation( + golden=gcc_evaluation.Evaluation.Golden( + turns=[ + gcc_evaluation.Evaluation.GoldenTurn( + steps=[ + gcc_evaluation.Evaluation.Step( + user_input=session_service.SessionInput( + text="text_value" + ) + ) + ] + ) + ] + ) + ), + evaluation_id="evaluation_id_value", + ) + + +def test_generate_evaluation_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.generate_evaluation in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[client._transport.generate_evaluation] = ( + mock_rpc + ) + + request = {} + client.generate_evaluation(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.generate_evaluation(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_generate_evaluation_rest_required_fields( + request_type=evaluation_service.GenerateEvaluationRequest, +): + transport_class = transports.EvaluationServiceRestTransport request_init = {} - request_init["name"] = "" - request_init["audio_content"] = b"" + request_init["conversation"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -14539,24 +16034,21 @@ def test_upload_evaluation_audio_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).upload_evaluation_audio._get_unset_required_fields(jsonified_request) + ).generate_evaluation._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present - jsonified_request["name"] = "name_value" - jsonified_request["audioContent"] = b"audio_content_blob" + jsonified_request["conversation"] = "conversation_value" unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).upload_evaluation_audio._get_unset_required_fields(jsonified_request) + ).generate_evaluation._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone - assert "name" in jsonified_request - assert jsonified_request["name"] == "name_value" - assert "audioContent" in jsonified_request - assert jsonified_request["audioContent"] == b"audio_content_blob" + assert "conversation" in jsonified_request + assert jsonified_request["conversation"] == "conversation_value" client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), @@ -14565,7 +16057,7 @@ def test_upload_evaluation_audio_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = evaluation_service.UploadEvaluationAudioResponse() + return_value = operations_pb2.Operation(name="operations/spam") # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -14585,42 +16077,29 @@ def test_upload_evaluation_audio_rest_required_fields( response_value = Response() response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = evaluation_service.UploadEvaluationAudioResponse.pb( - return_value - ) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.upload_evaluation_audio(request) + response = client.generate_evaluation(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_upload_evaluation_audio_rest_unset_required_fields(): +def test_generate_evaluation_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.upload_evaluation_audio._get_unset_required_fields({}) - assert set(unset_fields) == ( - set(()) - & set( - ( - "name", - "audioContent", - ) - ) - ) + unset_fields = transport.generate_evaluation._get_unset_required_fields({}) + assert set(unset_fields) == (set(()) & set(("conversation",))) -def test_upload_evaluation_audio_rest_flattened(): +def test_generate_evaluation_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -14629,44 +16108,41 @@ def test_upload_evaluation_audio_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation_service.UploadEvaluationAudioResponse() + return_value = operations_pb2.Operation(name="operations/spam") # get arguments that satisfy an http rule for this method sample_request = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4" + "conversation": "projects/sample1/locations/sample2/apps/sample3/conversations/sample4" } # get truthy value for each flattened field mock_args = dict( - name="name_value", - audio_content=b"audio_content_blob", + conversation="conversation_value", ) mock_args.update(sample_request) # Wrap the value into a proper Response obj response_value = Response() response_value.status_code = 200 - # Convert return value to protobuf type - return_value = evaluation_service.UploadEvaluationAudioResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.upload_evaluation_audio(**mock_args) + client.generate_evaluation(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1beta/{name=projects/*/locations/*/apps/*/evaluations/*}:uploadEvaluationAudio" + "%s/v1beta/{conversation=projects/*/locations/*/apps/*/conversations/*}:generateEvaluation" % client.transport._host, args[1], ) -def test_upload_evaluation_audio_rest_flattened_error(transport: str = "rest"): +def test_generate_evaluation_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -14675,14 +16151,13 @@ def test_upload_evaluation_audio_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.upload_evaluation_audio( - evaluation_service.UploadEvaluationAudioRequest(), - name="name_value", - audio_content=b"audio_content_blob", + client.generate_evaluation( + evaluation_service.GenerateEvaluationRequest(), + conversation="conversation_value", ) -def test_create_evaluation_rest_use_cached_wrapped_rpc(): +def test_import_evaluations_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -14696,32 +16171,217 @@ def test_create_evaluation_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert client._transport.create_evaluation in client._transport._wrapped_methods + assert ( + client._transport.import_evaluations in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[client._transport.import_evaluations] = ( + mock_rpc + ) + + request = {} + client.import_evaluations(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.import_evaluations(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_import_evaluations_rest_required_fields( + request_type=evaluation_service.ImportEvaluationsRequest, +): + transport_class = transports.EvaluationServiceRestTransport + + request_init = {} + request_init["parent"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).import_evaluations._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["parent"] = "parent_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).import_evaluations._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "post", + "query_params": pb_request, + } + transcode_result["body"] = pb_request + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.import_evaluations(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_import_evaluations_rest_unset_required_fields(): + transport = transports.EvaluationServiceRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.import_evaluations._get_unset_required_fields({}) + assert set(unset_fields) == (set(()) & set(("parent",))) + + +def test_import_evaluations_rest_flattened(): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # get arguments that satisfy an http rule for this method + sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} + + # get truthy value for each flattened field + mock_args = dict( + parent="parent_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.import_evaluations(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1beta/{parent=projects/*/locations/*/apps/*}:importEvaluations" + % client.transport._host, + args[1], + ) + + +def test_import_evaluations_rest_flattened_error(transport: str = "rest"): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.import_evaluations( + evaluation_service.ImportEvaluationsRequest(), + parent="parent_value", + ) + + +def test_create_evaluation_dataset_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.create_evaluation_dataset + in client._transport._wrapped_methods + ) # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.create_evaluation] = ( - mock_rpc - ) + client._transport._wrapped_methods[ + client._transport.create_evaluation_dataset + ] = mock_rpc request = {} - client.create_evaluation(request) + client.create_evaluation_dataset(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.create_evaluation(request) + client.create_evaluation_dataset(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_create_evaluation_rest_required_fields( - request_type=evaluation_service.CreateEvaluationRequest, +def test_create_evaluation_dataset_rest_required_fields( + request_type=evaluation_service.CreateEvaluationDatasetRequest, ): transport_class = transports.EvaluationServiceRestTransport @@ -14737,7 +16397,7 @@ def test_create_evaluation_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).create_evaluation._get_unset_required_fields(jsonified_request) + ).create_evaluation_dataset._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present @@ -14746,9 +16406,9 @@ def test_create_evaluation_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).create_evaluation._get_unset_required_fields(jsonified_request) + ).create_evaluation_dataset._get_unset_required_fields(jsonified_request) # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set(("evaluation_id",)) + assert not set(unset_fields) - set(("evaluation_dataset_id",)) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone @@ -14762,7 +16422,7 @@ def test_create_evaluation_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = gcc_evaluation.Evaluation() + return_value = evaluation.EvaluationDataset() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -14784,38 +16444,38 @@ def test_create_evaluation_rest_required_fields( response_value.status_code = 200 # Convert return value to protobuf type - return_value = gcc_evaluation.Evaluation.pb(return_value) + return_value = evaluation.EvaluationDataset.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.create_evaluation(request) + response = client.create_evaluation_dataset(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_create_evaluation_rest_unset_required_fields(): +def test_create_evaluation_dataset_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.create_evaluation._get_unset_required_fields({}) + unset_fields = transport.create_evaluation_dataset._get_unset_required_fields({}) assert set(unset_fields) == ( - set(("evaluationId",)) + set(("evaluationDatasetId",)) & set( ( "parent", - "evaluation", + "evaluationDataset", ) ) ) -def test_create_evaluation_rest_flattened(): +def test_create_evaluation_dataset_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -14824,7 +16484,7 @@ def test_create_evaluation_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = gcc_evaluation.Evaluation() + return_value = evaluation.EvaluationDataset() # get arguments that satisfy an http rule for this method sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} @@ -14832,22 +16492,8 @@ def test_create_evaluation_rest_flattened(): # get truthy value for each flattened field mock_args = dict( parent="parent_value", - evaluation=gcc_evaluation.Evaluation( - golden=gcc_evaluation.Evaluation.Golden( - turns=[ - gcc_evaluation.Evaluation.GoldenTurn( - steps=[ - gcc_evaluation.Evaluation.Step( - user_input=session_service.SessionInput( - text="text_value" - ) - ) - ] - ) - ] - ) - ), - evaluation_id="evaluation_id_value", + evaluation_dataset=evaluation.EvaluationDataset(name="name_value"), + evaluation_dataset_id="evaluation_dataset_id_value", ) mock_args.update(sample_request) @@ -14855,26 +16501,26 @@ def test_create_evaluation_rest_flattened(): response_value = Response() response_value.status_code = 200 # Convert return value to protobuf type - return_value = gcc_evaluation.Evaluation.pb(return_value) + return_value = evaluation.EvaluationDataset.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.create_evaluation(**mock_args) + client.create_evaluation_dataset(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1beta/{parent=projects/*/locations/*/apps/*}/evaluations" + "%s/v1beta/{parent=projects/*/locations/*/apps/*}/evaluationDatasets" % client.transport._host, args[1], ) -def test_create_evaluation_rest_flattened_error(transport: str = "rest"): +def test_create_evaluation_dataset_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -14883,29 +16529,15 @@ def test_create_evaluation_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.create_evaluation( - evaluation_service.CreateEvaluationRequest(), + client.create_evaluation_dataset( + evaluation_service.CreateEvaluationDatasetRequest(), parent="parent_value", - evaluation=gcc_evaluation.Evaluation( - golden=gcc_evaluation.Evaluation.Golden( - turns=[ - gcc_evaluation.Evaluation.GoldenTurn( - steps=[ - gcc_evaluation.Evaluation.Step( - user_input=session_service.SessionInput( - text="text_value" - ) - ) - ] - ) - ] - ) - ), - evaluation_id="evaluation_id_value", + evaluation_dataset=evaluation.EvaluationDataset(name="name_value"), + evaluation_dataset_id="evaluation_dataset_id_value", ) -def test_generate_evaluation_rest_use_cached_wrapped_rpc(): +def test_update_evaluation_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -14919,43 +16551,36 @@ def test_generate_evaluation_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert ( - client._transport.generate_evaluation in client._transport._wrapped_methods - ) + assert client._transport.update_evaluation in client._transport._wrapped_methods # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.generate_evaluation] = ( + client._transport._wrapped_methods[client._transport.update_evaluation] = ( mock_rpc ) request = {} - client.generate_evaluation(request) + client.update_evaluation(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - # Operation methods build a cached wrapper on first rpc call - # subsequent calls should use the cached wrapper - wrapper_fn.reset_mock() - - client.generate_evaluation(request) + client.update_evaluation(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_generate_evaluation_rest_required_fields( - request_type=evaluation_service.GenerateEvaluationRequest, +def test_update_evaluation_rest_required_fields( + request_type=evaluation_service.UpdateEvaluationRequest, ): transport_class = transports.EvaluationServiceRestTransport request_init = {} - request_init["conversation"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -14966,21 +16591,19 @@ def test_generate_evaluation_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).generate_evaluation._get_unset_required_fields(jsonified_request) + ).update_evaluation._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present - jsonified_request["conversation"] = "conversation_value" - unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).generate_evaluation._get_unset_required_fields(jsonified_request) + ).update_evaluation._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set(("update_mask",)) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone - assert "conversation" in jsonified_request - assert jsonified_request["conversation"] == "conversation_value" client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), @@ -14989,7 +16612,7 @@ def test_generate_evaluation_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = gcc_evaluation.Evaluation() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -15001,7 +16624,7 @@ def test_generate_evaluation_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "post", + "method": "patch", "query_params": pb_request, } transcode_result["body"] = pb_request @@ -15009,29 +16632,32 @@ def test_generate_evaluation_rest_required_fields( response_value = Response() response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = gcc_evaluation.Evaluation.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.generate_evaluation(request) + response = client.update_evaluation(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_generate_evaluation_rest_unset_required_fields(): +def test_update_evaluation_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.generate_evaluation._get_unset_required_fields({}) - assert set(unset_fields) == (set(()) & set(("conversation",))) + unset_fields = transport.update_evaluation._get_unset_required_fields({}) + assert set(unset_fields) == (set(("updateMask",)) & set(("evaluation",))) -def test_generate_evaluation_rest_flattened(): +def test_update_evaluation_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -15040,41 +16666,60 @@ def test_generate_evaluation_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = gcc_evaluation.Evaluation() # get arguments that satisfy an http rule for this method sample_request = { - "conversation": "projects/sample1/locations/sample2/apps/sample3/conversations/sample4" + "evaluation": { + "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4" + } } # get truthy value for each flattened field mock_args = dict( - conversation="conversation_value", + evaluation=gcc_evaluation.Evaluation( + golden=gcc_evaluation.Evaluation.Golden( + turns=[ + gcc_evaluation.Evaluation.GoldenTurn( + steps=[ + gcc_evaluation.Evaluation.Step( + user_input=session_service.SessionInput( + text="text_value" + ) + ) + ] + ) + ] + ) + ), + update_mask=field_mask_pb2.FieldMask(paths=["paths_value"]), ) mock_args.update(sample_request) # Wrap the value into a proper Response obj response_value = Response() response_value.status_code = 200 + # Convert return value to protobuf type + return_value = gcc_evaluation.Evaluation.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.generate_evaluation(**mock_args) + client.update_evaluation(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1beta/{conversation=projects/*/locations/*/apps/*/conversations/*}:generateEvaluation" + "%s/v1beta/{evaluation.name=projects/*/locations/*/apps/*/evaluations/*}" % client.transport._host, args[1], ) -def test_generate_evaluation_rest_flattened_error(transport: str = "rest"): +def test_update_evaluation_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -15083,13 +16728,28 @@ def test_generate_evaluation_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.generate_evaluation( - evaluation_service.GenerateEvaluationRequest(), - conversation="conversation_value", + client.update_evaluation( + evaluation_service.UpdateEvaluationRequest(), + evaluation=gcc_evaluation.Evaluation( + golden=gcc_evaluation.Evaluation.Golden( + turns=[ + gcc_evaluation.Evaluation.GoldenTurn( + steps=[ + gcc_evaluation.Evaluation.Step( + user_input=session_service.SessionInput( + text="text_value" + ) + ) + ] + ) + ] + ) + ), + update_mask=field_mask_pb2.FieldMask(paths=["paths_value"]), ) -def test_import_evaluations_rest_use_cached_wrapped_rpc(): +def test_update_evaluation_dataset_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -15104,7 +16764,8 @@ def test_import_evaluations_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.import_evaluations in client._transport._wrapped_methods + client._transport.update_evaluation_dataset + in client._transport._wrapped_methods ) # Replace cached wrapped function with mock @@ -15112,34 +16773,29 @@ def test_import_evaluations_rest_use_cached_wrapped_rpc(): mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.import_evaluations] = ( - mock_rpc - ) + client._transport._wrapped_methods[ + client._transport.update_evaluation_dataset + ] = mock_rpc request = {} - client.import_evaluations(request) + client.update_evaluation_dataset(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - # Operation methods build a cached wrapper on first rpc call - # subsequent calls should use the cached wrapper - wrapper_fn.reset_mock() - - client.import_evaluations(request) + client.update_evaluation_dataset(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_import_evaluations_rest_required_fields( - request_type=evaluation_service.ImportEvaluationsRequest, +def test_update_evaluation_dataset_rest_required_fields( + request_type=evaluation_service.UpdateEvaluationDatasetRequest, ): transport_class = transports.EvaluationServiceRestTransport request_init = {} - request_init["parent"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -15150,21 +16806,19 @@ def test_import_evaluations_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).import_evaluations._get_unset_required_fields(jsonified_request) + ).update_evaluation_dataset._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present - jsonified_request["parent"] = "parent_value" - unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).import_evaluations._get_unset_required_fields(jsonified_request) + ).update_evaluation_dataset._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set(("update_mask",)) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), @@ -15173,7 +16827,7 @@ def test_import_evaluations_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = evaluation.EvaluationDataset() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -15185,7 +16839,7 @@ def test_import_evaluations_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "post", + "method": "patch", "query_params": pb_request, } transcode_result["body"] = pb_request @@ -15193,29 +16847,32 @@ def test_import_evaluations_rest_required_fields( response_value = Response() response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = evaluation.EvaluationDataset.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.import_evaluations(request) + response = client.update_evaluation_dataset(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_import_evaluations_rest_unset_required_fields(): +def test_update_evaluation_dataset_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.import_evaluations._get_unset_required_fields({}) - assert set(unset_fields) == (set(()) & set(("parent",))) + unset_fields = transport.update_evaluation_dataset._get_unset_required_fields({}) + assert set(unset_fields) == (set(("updateMask",)) & set(("evaluationDataset",))) -def test_import_evaluations_rest_flattened(): +def test_update_evaluation_dataset_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -15224,39 +16881,46 @@ def test_import_evaluations_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = evaluation.EvaluationDataset() # get arguments that satisfy an http rule for this method - sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} + sample_request = { + "evaluation_dataset": { + "name": "projects/sample1/locations/sample2/apps/sample3/evaluationDatasets/sample4" + } + } # get truthy value for each flattened field mock_args = dict( - parent="parent_value", + evaluation_dataset=evaluation.EvaluationDataset(name="name_value"), + update_mask=field_mask_pb2.FieldMask(paths=["paths_value"]), ) mock_args.update(sample_request) # Wrap the value into a proper Response obj response_value = Response() response_value.status_code = 200 + # Convert return value to protobuf type + return_value = evaluation.EvaluationDataset.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.import_evaluations(**mock_args) + client.update_evaluation_dataset(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1beta/{parent=projects/*/locations/*/apps/*}:importEvaluations" + "%s/v1beta/{evaluation_dataset.name=projects/*/locations/*/apps/*/evaluationDatasets/*}" % client.transport._host, args[1], ) -def test_import_evaluations_rest_flattened_error(transport: str = "rest"): +def test_update_evaluation_dataset_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -15265,13 +16929,14 @@ def test_import_evaluations_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.import_evaluations( - evaluation_service.ImportEvaluationsRequest(), - parent="parent_value", + client.update_evaluation_dataset( + evaluation_service.UpdateEvaluationDatasetRequest(), + evaluation_dataset=evaluation.EvaluationDataset(name="name_value"), + update_mask=field_mask_pb2.FieldMask(paths=["paths_value"]), ) -def test_create_evaluation_dataset_rest_use_cached_wrapped_rpc(): +def test_delete_evaluation_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -15285,40 +16950,37 @@ def test_create_evaluation_dataset_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert ( - client._transport.create_evaluation_dataset - in client._transport._wrapped_methods - ) + assert client._transport.delete_evaluation in client._transport._wrapped_methods # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[ - client._transport.create_evaluation_dataset - ] = mock_rpc + client._transport._wrapped_methods[client._transport.delete_evaluation] = ( + mock_rpc + ) request = {} - client.create_evaluation_dataset(request) + client.delete_evaluation(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.create_evaluation_dataset(request) + client.delete_evaluation(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_create_evaluation_dataset_rest_required_fields( - request_type=evaluation_service.CreateEvaluationDatasetRequest, +def test_delete_evaluation_rest_required_fields( + request_type=evaluation_service.DeleteEvaluationRequest, ): transport_class = transports.EvaluationServiceRestTransport request_init = {} - request_init["parent"] = "" + request_init["name"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -15329,23 +16991,28 @@ def test_create_evaluation_dataset_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).create_evaluation_dataset._get_unset_required_fields(jsonified_request) + ).delete_evaluation._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present - jsonified_request["parent"] = "parent_value" + jsonified_request["name"] = "name_value" unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).create_evaluation_dataset._get_unset_required_fields(jsonified_request) + ).delete_evaluation._get_unset_required_fields(jsonified_request) # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set(("evaluation_dataset_id",)) + assert not set(unset_fields) - set( + ( + "etag", + "force", + ) + ) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), @@ -15354,7 +17021,7 @@ def test_create_evaluation_dataset_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = evaluation.EvaluationDataset() + return_value = None # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -15366,48 +17033,44 @@ def test_create_evaluation_dataset_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "post", + "method": "delete", "query_params": pb_request, } - transcode_result["body"] = pb_request transcode.return_value = transcode_result response_value = Response() response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = evaluation.EvaluationDataset.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) + json_return_value = "" response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.create_evaluation_dataset(request) + response = client.delete_evaluation(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_create_evaluation_dataset_rest_unset_required_fields(): +def test_delete_evaluation_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.create_evaluation_dataset._get_unset_required_fields({}) + unset_fields = transport.delete_evaluation._get_unset_required_fields({}) assert set(unset_fields) == ( - set(("evaluationDatasetId",)) - & set( + set( ( - "parent", - "evaluationDataset", + "etag", + "force", ) ) + & set(("name",)) ) -def test_create_evaluation_dataset_rest_flattened(): +def test_delete_evaluation_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -15416,43 +17079,41 @@ def test_create_evaluation_dataset_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation.EvaluationDataset() + return_value = None # get arguments that satisfy an http rule for this method - sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} + sample_request = { + "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4" + } # get truthy value for each flattened field mock_args = dict( - parent="parent_value", - evaluation_dataset=evaluation.EvaluationDataset(name="name_value"), - evaluation_dataset_id="evaluation_dataset_id_value", + name="name_value", ) mock_args.update(sample_request) # Wrap the value into a proper Response obj response_value = Response() response_value.status_code = 200 - # Convert return value to protobuf type - return_value = evaluation.EvaluationDataset.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) + json_return_value = "" response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.create_evaluation_dataset(**mock_args) + client.delete_evaluation(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1beta/{parent=projects/*/locations/*/apps/*}/evaluationDatasets" + "%s/v1beta/{name=projects/*/locations/*/apps/*/evaluations/*}" % client.transport._host, args[1], ) -def test_create_evaluation_dataset_rest_flattened_error(transport: str = "rest"): +def test_delete_evaluation_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -15461,15 +17122,13 @@ def test_create_evaluation_dataset_rest_flattened_error(transport: str = "rest") # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.create_evaluation_dataset( - evaluation_service.CreateEvaluationDatasetRequest(), - parent="parent_value", - evaluation_dataset=evaluation.EvaluationDataset(name="name_value"), - evaluation_dataset_id="evaluation_dataset_id_value", + client.delete_evaluation( + evaluation_service.DeleteEvaluationRequest(), + name="name_value", ) -def test_update_evaluation_rest_use_cached_wrapped_rpc(): +def test_delete_evaluation_result_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -15483,36 +17142,40 @@ def test_update_evaluation_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert client._transport.update_evaluation in client._transport._wrapped_methods + assert ( + client._transport.delete_evaluation_result + in client._transport._wrapped_methods + ) # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.update_evaluation] = ( - mock_rpc - ) + client._transport._wrapped_methods[ + client._transport.delete_evaluation_result + ] = mock_rpc request = {} - client.update_evaluation(request) + client.delete_evaluation_result(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.update_evaluation(request) + client.delete_evaluation_result(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_update_evaluation_rest_required_fields( - request_type=evaluation_service.UpdateEvaluationRequest, +def test_delete_evaluation_result_rest_required_fields( + request_type=evaluation_service.DeleteEvaluationResultRequest, ): transport_class = transports.EvaluationServiceRestTransport request_init = {} + request_init["name"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -15523,19 +17186,21 @@ def test_update_evaluation_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).update_evaluation._get_unset_required_fields(jsonified_request) + ).delete_evaluation_result._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present + jsonified_request["name"] = "name_value" + unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).update_evaluation._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set(("update_mask",)) + ).delete_evaluation_result._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), @@ -15544,7 +17209,7 @@ def test_update_evaluation_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = gcc_evaluation.Evaluation() + return_value = None # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -15556,40 +17221,36 @@ def test_update_evaluation_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "patch", + "method": "delete", "query_params": pb_request, } - transcode_result["body"] = pb_request transcode.return_value = transcode_result response_value = Response() response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = gcc_evaluation.Evaluation.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) + json_return_value = "" response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.update_evaluation(request) + response = client.delete_evaluation_result(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_update_evaluation_rest_unset_required_fields(): +def test_delete_evaluation_result_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.update_evaluation._get_unset_required_fields({}) - assert set(unset_fields) == (set(("updateMask",)) & set(("evaluation",))) + unset_fields = transport.delete_evaluation_result._get_unset_required_fields({}) + assert set(unset_fields) == (set(()) & set(("name",))) -def test_update_evaluation_rest_flattened(): +def test_delete_evaluation_result_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -15598,60 +17259,41 @@ def test_update_evaluation_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = gcc_evaluation.Evaluation() + return_value = None # get arguments that satisfy an http rule for this method sample_request = { - "evaluation": { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4" - } + "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4/results/sample5" } # get truthy value for each flattened field mock_args = dict( - evaluation=gcc_evaluation.Evaluation( - golden=gcc_evaluation.Evaluation.Golden( - turns=[ - gcc_evaluation.Evaluation.GoldenTurn( - steps=[ - gcc_evaluation.Evaluation.Step( - user_input=session_service.SessionInput( - text="text_value" - ) - ) - ] - ) - ] - ) - ), - update_mask=field_mask_pb2.FieldMask(paths=["paths_value"]), + name="name_value", ) mock_args.update(sample_request) # Wrap the value into a proper Response obj response_value = Response() response_value.status_code = 200 - # Convert return value to protobuf type - return_value = gcc_evaluation.Evaluation.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) + json_return_value = "" response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.update_evaluation(**mock_args) + client.delete_evaluation_result(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1beta/{evaluation.name=projects/*/locations/*/apps/*/evaluations/*}" + "%s/v1beta/{name=projects/*/locations/*/apps/*/evaluations/*/results/*}" % client.transport._host, args[1], ) -def test_update_evaluation_rest_flattened_error(transport: str = "rest"): +def test_delete_evaluation_result_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -15660,28 +17302,13 @@ def test_update_evaluation_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.update_evaluation( - evaluation_service.UpdateEvaluationRequest(), - evaluation=gcc_evaluation.Evaluation( - golden=gcc_evaluation.Evaluation.Golden( - turns=[ - gcc_evaluation.Evaluation.GoldenTurn( - steps=[ - gcc_evaluation.Evaluation.Step( - user_input=session_service.SessionInput( - text="text_value" - ) - ) - ] - ) - ] - ) - ), - update_mask=field_mask_pb2.FieldMask(paths=["paths_value"]), + client.delete_evaluation_result( + evaluation_service.DeleteEvaluationResultRequest(), + name="name_value", ) -def test_update_evaluation_dataset_rest_use_cached_wrapped_rpc(): +def test_delete_evaluation_dataset_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -15696,7 +17323,7 @@ def test_update_evaluation_dataset_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.update_evaluation_dataset + client._transport.delete_evaluation_dataset in client._transport._wrapped_methods ) @@ -15706,28 +17333,29 @@ def test_update_evaluation_dataset_rest_use_cached_wrapped_rpc(): "foo" # operation_request.operation in compute client(s) expect a string. ) client._transport._wrapped_methods[ - client._transport.update_evaluation_dataset + client._transport.delete_evaluation_dataset ] = mock_rpc request = {} - client.update_evaluation_dataset(request) + client.delete_evaluation_dataset(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.update_evaluation_dataset(request) + client.delete_evaluation_dataset(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_update_evaluation_dataset_rest_required_fields( - request_type=evaluation_service.UpdateEvaluationDatasetRequest, +def test_delete_evaluation_dataset_rest_required_fields( + request_type=evaluation_service.DeleteEvaluationDatasetRequest, ): transport_class = transports.EvaluationServiceRestTransport request_init = {} + request_init["name"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -15738,19 +17366,23 @@ def test_update_evaluation_dataset_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).update_evaluation_dataset._get_unset_required_fields(jsonified_request) + ).delete_evaluation_dataset._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present + jsonified_request["name"] = "name_value" + unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).update_evaluation_dataset._get_unset_required_fields(jsonified_request) + ).delete_evaluation_dataset._get_unset_required_fields(jsonified_request) # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set(("update_mask",)) + assert not set(unset_fields) - set(("etag",)) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), @@ -15759,7 +17391,7 @@ def test_update_evaluation_dataset_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = evaluation.EvaluationDataset() + return_value = None # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -15771,40 +17403,36 @@ def test_update_evaluation_dataset_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "patch", + "method": "delete", "query_params": pb_request, } - transcode_result["body"] = pb_request transcode.return_value = transcode_result response_value = Response() response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = evaluation.EvaluationDataset.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) + json_return_value = "" response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.update_evaluation_dataset(request) + response = client.delete_evaluation_dataset(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_update_evaluation_dataset_rest_unset_required_fields(): +def test_delete_evaluation_dataset_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.update_evaluation_dataset._get_unset_required_fields({}) - assert set(unset_fields) == (set(("updateMask",)) & set(("evaluationDataset",))) + unset_fields = transport.delete_evaluation_dataset._get_unset_required_fields({}) + assert set(unset_fields) == (set(("etag",)) & set(("name",))) -def test_update_evaluation_dataset_rest_flattened(): +def test_delete_evaluation_dataset_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -15813,46 +17441,41 @@ def test_update_evaluation_dataset_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation.EvaluationDataset() + return_value = None # get arguments that satisfy an http rule for this method sample_request = { - "evaluation_dataset": { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluationDatasets/sample4" - } + "name": "projects/sample1/locations/sample2/apps/sample3/evaluationDatasets/sample4" } # get truthy value for each flattened field mock_args = dict( - evaluation_dataset=evaluation.EvaluationDataset(name="name_value"), - update_mask=field_mask_pb2.FieldMask(paths=["paths_value"]), + name="name_value", ) mock_args.update(sample_request) # Wrap the value into a proper Response obj response_value = Response() response_value.status_code = 200 - # Convert return value to protobuf type - return_value = evaluation.EvaluationDataset.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) + json_return_value = "" response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.update_evaluation_dataset(**mock_args) + client.delete_evaluation_dataset(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1beta/{evaluation_dataset.name=projects/*/locations/*/apps/*/evaluationDatasets/*}" + "%s/v1beta/{name=projects/*/locations/*/apps/*/evaluationDatasets/*}" % client.transport._host, args[1], ) -def test_update_evaluation_dataset_rest_flattened_error(transport: str = "rest"): +def test_delete_evaluation_dataset_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -15861,14 +17484,13 @@ def test_update_evaluation_dataset_rest_flattened_error(transport: str = "rest") # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.update_evaluation_dataset( - evaluation_service.UpdateEvaluationDatasetRequest(), - evaluation_dataset=evaluation.EvaluationDataset(name="name_value"), - update_mask=field_mask_pb2.FieldMask(paths=["paths_value"]), + client.delete_evaluation_dataset( + evaluation_service.DeleteEvaluationDatasetRequest(), + name="name_value", ) -def test_delete_evaluation_rest_use_cached_wrapped_rpc(): +def test_delete_evaluation_run_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -15882,32 +17504,39 @@ def test_delete_evaluation_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert client._transport.delete_evaluation in client._transport._wrapped_methods + assert ( + client._transport.delete_evaluation_run + in client._transport._wrapped_methods + ) # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.delete_evaluation] = ( + client._transport._wrapped_methods[client._transport.delete_evaluation_run] = ( mock_rpc ) request = {} - client.delete_evaluation(request) + client.delete_evaluation_run(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.delete_evaluation(request) + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.delete_evaluation_run(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_delete_evaluation_rest_required_fields( - request_type=evaluation_service.DeleteEvaluationRequest, +def test_delete_evaluation_run_rest_required_fields( + request_type=evaluation_service.DeleteEvaluationRunRequest, ): transport_class = transports.EvaluationServiceRestTransport @@ -15923,7 +17552,7 @@ def test_delete_evaluation_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).delete_evaluation._get_unset_required_fields(jsonified_request) + ).delete_evaluation_run._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present @@ -15932,14 +17561,7 @@ def test_delete_evaluation_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).delete_evaluation._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "etag", - "force", - ) - ) + ).delete_evaluation_run._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone @@ -15953,7 +17575,7 @@ def test_delete_evaluation_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = None + return_value = operations_pb2.Operation(name="operations/spam") # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -15972,37 +17594,29 @@ def test_delete_evaluation_rest_required_fields( response_value = Response() response_value.status_code = 200 - json_return_value = "" + json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.delete_evaluation(request) + response = client.delete_evaluation_run(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_delete_evaluation_rest_unset_required_fields(): +def test_delete_evaluation_run_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.delete_evaluation._get_unset_required_fields({}) - assert set(unset_fields) == ( - set( - ( - "etag", - "force", - ) - ) - & set(("name",)) - ) + unset_fields = transport.delete_evaluation_run._get_unset_required_fields({}) + assert set(unset_fields) == (set(()) & set(("name",))) -def test_delete_evaluation_rest_flattened(): +def test_delete_evaluation_run_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -16011,11 +17625,11 @@ def test_delete_evaluation_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = None + return_value = operations_pb2.Operation(name="operations/spam") # get arguments that satisfy an http rule for this method sample_request = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4" + "name": "projects/sample1/locations/sample2/apps/sample3/evaluationRuns/sample4" } # get truthy value for each flattened field @@ -16027,25 +17641,25 @@ def test_delete_evaluation_rest_flattened(): # Wrap the value into a proper Response obj response_value = Response() response_value.status_code = 200 - json_return_value = "" + json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.delete_evaluation(**mock_args) + client.delete_evaluation_run(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1beta/{name=projects/*/locations/*/apps/*/evaluations/*}" + "%s/v1beta/{name=projects/*/locations/*/apps/*/evaluationRuns/*}" % client.transport._host, args[1], ) -def test_delete_evaluation_rest_flattened_error(transport: str = "rest"): +def test_delete_evaluation_run_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -16054,13 +17668,13 @@ def test_delete_evaluation_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.delete_evaluation( - evaluation_service.DeleteEvaluationRequest(), + client.delete_evaluation_run( + evaluation_service.DeleteEvaluationRunRequest(), name="name_value", ) -def test_delete_evaluation_result_rest_use_cached_wrapped_rpc(): +def test_get_evaluation_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -16074,35 +17688,30 @@ def test_delete_evaluation_result_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert ( - client._transport.delete_evaluation_result - in client._transport._wrapped_methods - ) + assert client._transport.get_evaluation in client._transport._wrapped_methods # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[ - client._transport.delete_evaluation_result - ] = mock_rpc + client._transport._wrapped_methods[client._transport.get_evaluation] = mock_rpc request = {} - client.delete_evaluation_result(request) + client.get_evaluation(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.delete_evaluation_result(request) + client.get_evaluation(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_delete_evaluation_result_rest_required_fields( - request_type=evaluation_service.DeleteEvaluationResultRequest, +def test_get_evaluation_rest_required_fields( + request_type=evaluation_service.GetEvaluationRequest, ): transport_class = transports.EvaluationServiceRestTransport @@ -16118,7 +17727,7 @@ def test_delete_evaluation_result_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).delete_evaluation_result._get_unset_required_fields(jsonified_request) + ).get_evaluation._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present @@ -16127,7 +17736,7 @@ def test_delete_evaluation_result_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).delete_evaluation_result._get_unset_required_fields(jsonified_request) + ).get_evaluation._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone @@ -16141,7 +17750,7 @@ def test_delete_evaluation_result_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = None + return_value = evaluation.Evaluation() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -16153,36 +17762,39 @@ def test_delete_evaluation_result_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "delete", + "method": "get", "query_params": pb_request, } transcode.return_value = transcode_result response_value = Response() response_value.status_code = 200 - json_return_value = "" + + # Convert return value to protobuf type + return_value = evaluation.Evaluation.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.delete_evaluation_result(request) + response = client.get_evaluation(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_delete_evaluation_result_rest_unset_required_fields(): +def test_get_evaluation_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.delete_evaluation_result._get_unset_required_fields({}) + unset_fields = transport.get_evaluation._get_unset_required_fields({}) assert set(unset_fields) == (set(()) & set(("name",))) -def test_delete_evaluation_result_rest_flattened(): +def test_get_evaluation_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -16191,11 +17803,11 @@ def test_delete_evaluation_result_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = None + return_value = evaluation.Evaluation() # get arguments that satisfy an http rule for this method sample_request = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4/results/sample5" + "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4" } # get truthy value for each flattened field @@ -16207,25 +17819,27 @@ def test_delete_evaluation_result_rest_flattened(): # Wrap the value into a proper Response obj response_value = Response() response_value.status_code = 200 - json_return_value = "" + # Convert return value to protobuf type + return_value = evaluation.Evaluation.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.delete_evaluation_result(**mock_args) + client.get_evaluation(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1beta/{name=projects/*/locations/*/apps/*/evaluations/*/results/*}" + "%s/v1beta/{name=projects/*/locations/*/apps/*/evaluations/*}" % client.transport._host, args[1], ) -def test_delete_evaluation_result_rest_flattened_error(transport: str = "rest"): +def test_get_evaluation_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -16234,13 +17848,13 @@ def test_delete_evaluation_result_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.delete_evaluation_result( - evaluation_service.DeleteEvaluationResultRequest(), + client.get_evaluation( + evaluation_service.GetEvaluationRequest(), name="name_value", ) -def test_delete_evaluation_dataset_rest_use_cached_wrapped_rpc(): +def test_get_evaluation_result_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -16255,7 +17869,7 @@ def test_delete_evaluation_dataset_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.delete_evaluation_dataset + client._transport.get_evaluation_result in client._transport._wrapped_methods ) @@ -16264,25 +17878,25 @@ def test_delete_evaluation_dataset_rest_use_cached_wrapped_rpc(): mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[ - client._transport.delete_evaluation_dataset - ] = mock_rpc + client._transport._wrapped_methods[client._transport.get_evaluation_result] = ( + mock_rpc + ) request = {} - client.delete_evaluation_dataset(request) + client.get_evaluation_result(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.delete_evaluation_dataset(request) + client.get_evaluation_result(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_delete_evaluation_dataset_rest_required_fields( - request_type=evaluation_service.DeleteEvaluationDatasetRequest, +def test_get_evaluation_result_rest_required_fields( + request_type=evaluation_service.GetEvaluationResultRequest, ): transport_class = transports.EvaluationServiceRestTransport @@ -16298,7 +17912,7 @@ def test_delete_evaluation_dataset_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).delete_evaluation_dataset._get_unset_required_fields(jsonified_request) + ).get_evaluation_result._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present @@ -16307,9 +17921,7 @@ def test_delete_evaluation_dataset_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).delete_evaluation_dataset._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set(("etag",)) + ).get_evaluation_result._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone @@ -16323,7 +17935,7 @@ def test_delete_evaluation_dataset_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = None + return_value = evaluation.EvaluationResult() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -16335,36 +17947,39 @@ def test_delete_evaluation_dataset_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "delete", + "method": "get", "query_params": pb_request, } transcode.return_value = transcode_result response_value = Response() response_value.status_code = 200 - json_return_value = "" + + # Convert return value to protobuf type + return_value = evaluation.EvaluationResult.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.delete_evaluation_dataset(request) + response = client.get_evaluation_result(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_delete_evaluation_dataset_rest_unset_required_fields(): +def test_get_evaluation_result_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.delete_evaluation_dataset._get_unset_required_fields({}) - assert set(unset_fields) == (set(("etag",)) & set(("name",))) + unset_fields = transport.get_evaluation_result._get_unset_required_fields({}) + assert set(unset_fields) == (set(()) & set(("name",))) -def test_delete_evaluation_dataset_rest_flattened(): +def test_get_evaluation_result_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -16373,11 +17988,11 @@ def test_delete_evaluation_dataset_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = None + return_value = evaluation.EvaluationResult() # get arguments that satisfy an http rule for this method sample_request = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluationDatasets/sample4" + "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4/results/sample5" } # get truthy value for each flattened field @@ -16389,25 +18004,27 @@ def test_delete_evaluation_dataset_rest_flattened(): # Wrap the value into a proper Response obj response_value = Response() response_value.status_code = 200 - json_return_value = "" + # Convert return value to protobuf type + return_value = evaluation.EvaluationResult.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.delete_evaluation_dataset(**mock_args) + client.get_evaluation_result(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1beta/{name=projects/*/locations/*/apps/*/evaluationDatasets/*}" + "%s/v1beta/{name=projects/*/locations/*/apps/*/evaluations/*/results/*}" % client.transport._host, args[1], ) -def test_delete_evaluation_dataset_rest_flattened_error(transport: str = "rest"): +def test_get_evaluation_result_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -16416,13 +18033,13 @@ def test_delete_evaluation_dataset_rest_flattened_error(transport: str = "rest") # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.delete_evaluation_dataset( - evaluation_service.DeleteEvaluationDatasetRequest(), + client.get_evaluation_result( + evaluation_service.GetEvaluationResultRequest(), name="name_value", ) -def test_delete_evaluation_run_rest_use_cached_wrapped_rpc(): +def test_get_evaluation_dataset_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -16437,7 +18054,7 @@ def test_delete_evaluation_run_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.delete_evaluation_run + client._transport.get_evaluation_dataset in client._transport._wrapped_methods ) @@ -16446,29 +18063,25 @@ def test_delete_evaluation_run_rest_use_cached_wrapped_rpc(): mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.delete_evaluation_run] = ( + client._transport._wrapped_methods[client._transport.get_evaluation_dataset] = ( mock_rpc ) request = {} - client.delete_evaluation_run(request) + client.get_evaluation_dataset(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - # Operation methods build a cached wrapper on first rpc call - # subsequent calls should use the cached wrapper - wrapper_fn.reset_mock() - - client.delete_evaluation_run(request) + client.get_evaluation_dataset(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_delete_evaluation_run_rest_required_fields( - request_type=evaluation_service.DeleteEvaluationRunRequest, +def test_get_evaluation_dataset_rest_required_fields( + request_type=evaluation_service.GetEvaluationDatasetRequest, ): transport_class = transports.EvaluationServiceRestTransport @@ -16484,7 +18097,7 @@ def test_delete_evaluation_run_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).delete_evaluation_run._get_unset_required_fields(jsonified_request) + ).get_evaluation_dataset._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present @@ -16493,7 +18106,7 @@ def test_delete_evaluation_run_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).delete_evaluation_run._get_unset_required_fields(jsonified_request) + ).get_evaluation_dataset._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone @@ -16507,7 +18120,7 @@ def test_delete_evaluation_run_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = evaluation.EvaluationDataset() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -16519,36 +18132,39 @@ def test_delete_evaluation_run_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "delete", + "method": "get", "query_params": pb_request, } transcode.return_value = transcode_result response_value = Response() response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = evaluation.EvaluationDataset.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.delete_evaluation_run(request) + response = client.get_evaluation_dataset(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_delete_evaluation_run_rest_unset_required_fields(): +def test_get_evaluation_dataset_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.delete_evaluation_run._get_unset_required_fields({}) + unset_fields = transport.get_evaluation_dataset._get_unset_required_fields({}) assert set(unset_fields) == (set(()) & set(("name",))) -def test_delete_evaluation_run_rest_flattened(): +def test_get_evaluation_dataset_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -16557,11 +18173,11 @@ def test_delete_evaluation_run_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = evaluation.EvaluationDataset() # get arguments that satisfy an http rule for this method sample_request = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluationRuns/sample4" + "name": "projects/sample1/locations/sample2/apps/sample3/evaluationDatasets/sample4" } # get truthy value for each flattened field @@ -16573,25 +18189,27 @@ def test_delete_evaluation_run_rest_flattened(): # Wrap the value into a proper Response obj response_value = Response() response_value.status_code = 200 + # Convert return value to protobuf type + return_value = evaluation.EvaluationDataset.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.delete_evaluation_run(**mock_args) + client.get_evaluation_dataset(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1beta/{name=projects/*/locations/*/apps/*/evaluationRuns/*}" + "%s/v1beta/{name=projects/*/locations/*/apps/*/evaluationDatasets/*}" % client.transport._host, args[1], ) -def test_delete_evaluation_run_rest_flattened_error(transport: str = "rest"): +def test_get_evaluation_dataset_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -16600,13 +18218,13 @@ def test_delete_evaluation_run_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.delete_evaluation_run( - evaluation_service.DeleteEvaluationRunRequest(), + client.get_evaluation_dataset( + evaluation_service.GetEvaluationDatasetRequest(), name="name_value", ) -def test_get_evaluation_rest_use_cached_wrapped_rpc(): +def test_get_evaluation_run_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -16620,30 +18238,34 @@ def test_get_evaluation_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert client._transport.get_evaluation in client._transport._wrapped_methods + assert ( + client._transport.get_evaluation_run in client._transport._wrapped_methods + ) # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.get_evaluation] = mock_rpc + client._transport._wrapped_methods[client._transport.get_evaluation_run] = ( + mock_rpc + ) request = {} - client.get_evaluation(request) + client.get_evaluation_run(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.get_evaluation(request) + client.get_evaluation_run(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_get_evaluation_rest_required_fields( - request_type=evaluation_service.GetEvaluationRequest, +def test_get_evaluation_run_rest_required_fields( + request_type=evaluation_service.GetEvaluationRunRequest, ): transport_class = transports.EvaluationServiceRestTransport @@ -16659,7 +18281,7 @@ def test_get_evaluation_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).get_evaluation._get_unset_required_fields(jsonified_request) + ).get_evaluation_run._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present @@ -16668,7 +18290,7 @@ def test_get_evaluation_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).get_evaluation._get_unset_required_fields(jsonified_request) + ).get_evaluation_run._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone @@ -16682,7 +18304,7 @@ def test_get_evaluation_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = evaluation.Evaluation() + return_value = evaluation.EvaluationRun() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -16703,30 +18325,30 @@ def test_get_evaluation_rest_required_fields( response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation.Evaluation.pb(return_value) + return_value = evaluation.EvaluationRun.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_evaluation(request) + response = client.get_evaluation_run(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_get_evaluation_rest_unset_required_fields(): +def test_get_evaluation_run_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.get_evaluation._get_unset_required_fields({}) + unset_fields = transport.get_evaluation_run._get_unset_required_fields({}) assert set(unset_fields) == (set(()) & set(("name",))) -def test_get_evaluation_rest_flattened(): +def test_get_evaluation_run_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -16735,11 +18357,11 @@ def test_get_evaluation_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation.Evaluation() + return_value = evaluation.EvaluationRun() # get arguments that satisfy an http rule for this method sample_request = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4" + "name": "projects/sample1/locations/sample2/apps/sample3/evaluationRuns/sample4" } # get truthy value for each flattened field @@ -16752,26 +18374,26 @@ def test_get_evaluation_rest_flattened(): response_value = Response() response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation.Evaluation.pb(return_value) + return_value = evaluation.EvaluationRun.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_evaluation(**mock_args) + client.get_evaluation_run(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1beta/{name=projects/*/locations/*/apps/*/evaluations/*}" + "%s/v1beta/{name=projects/*/locations/*/apps/*/evaluationRuns/*}" % client.transport._host, args[1], ) -def test_get_evaluation_rest_flattened_error(transport: str = "rest"): +def test_get_evaluation_run_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -16780,13 +18402,13 @@ def test_get_evaluation_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.get_evaluation( - evaluation_service.GetEvaluationRequest(), + client.get_evaluation_run( + evaluation_service.GetEvaluationRunRequest(), name="name_value", ) -def test_get_evaluation_result_rest_use_cached_wrapped_rpc(): +def test_list_evaluations_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -16800,40 +18422,37 @@ def test_get_evaluation_result_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert ( - client._transport.get_evaluation_result - in client._transport._wrapped_methods - ) + assert client._transport.list_evaluations in client._transport._wrapped_methods # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.get_evaluation_result] = ( + client._transport._wrapped_methods[client._transport.list_evaluations] = ( mock_rpc ) request = {} - client.get_evaluation_result(request) + client.list_evaluations(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.get_evaluation_result(request) + client.list_evaluations(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_get_evaluation_result_rest_required_fields( - request_type=evaluation_service.GetEvaluationResultRequest, +def test_list_evaluations_rest_required_fields( + request_type=evaluation_service.ListEvaluationsRequest, ): transport_class = transports.EvaluationServiceRestTransport request_init = {} - request_init["name"] = "" + request_init["parent"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -16844,21 +18463,33 @@ def test_get_evaluation_result_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).get_evaluation_result._get_unset_required_fields(jsonified_request) + ).list_evaluations._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present - jsonified_request["name"] = "name_value" + jsonified_request["parent"] = "parent_value" unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).get_evaluation_result._get_unset_required_fields(jsonified_request) + ).list_evaluations._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "evaluation_filter", + "evaluation_run_filter", + "filter", + "last_ten_results", + "order_by", + "page_size", + "page_token", + ) + ) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone - assert "name" in jsonified_request - assert jsonified_request["name"] == "name_value" + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), @@ -16867,7 +18498,7 @@ def test_get_evaluation_result_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = evaluation.EvaluationResult() + return_value = evaluation_service.ListEvaluationsResponse() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -16888,30 +18519,43 @@ def test_get_evaluation_result_rest_required_fields( response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation.EvaluationResult.pb(return_value) + return_value = evaluation_service.ListEvaluationsResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_evaluation_result(request) + response = client.list_evaluations(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_get_evaluation_result_rest_unset_required_fields(): +def test_list_evaluations_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.get_evaluation_result._get_unset_required_fields({}) - assert set(unset_fields) == (set(()) & set(("name",))) + unset_fields = transport.list_evaluations._get_unset_required_fields({}) + assert set(unset_fields) == ( + set( + ( + "evaluationFilter", + "evaluationRunFilter", + "filter", + "lastTenResults", + "orderBy", + "pageSize", + "pageToken", + ) + ) + & set(("parent",)) + ) -def test_get_evaluation_result_rest_flattened(): +def test_list_evaluations_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -16920,16 +18564,14 @@ def test_get_evaluation_result_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation.EvaluationResult() + return_value = evaluation_service.ListEvaluationsResponse() # get arguments that satisfy an http rule for this method - sample_request = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4/results/sample5" - } + sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} # get truthy value for each flattened field mock_args = dict( - name="name_value", + parent="parent_value", ) mock_args.update(sample_request) @@ -16937,26 +18579,26 @@ def test_get_evaluation_result_rest_flattened(): response_value = Response() response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation.EvaluationResult.pb(return_value) + return_value = evaluation_service.ListEvaluationsResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_evaluation_result(**mock_args) + client.list_evaluations(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1beta/{name=projects/*/locations/*/apps/*/evaluations/*/results/*}" + "%s/v1beta/{parent=projects/*/locations/*/apps/*}/evaluations" % client.transport._host, args[1], ) -def test_get_evaluation_result_rest_flattened_error(transport: str = "rest"): +def test_list_evaluations_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -16965,13 +18607,76 @@ def test_get_evaluation_result_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.get_evaluation_result( - evaluation_service.GetEvaluationResultRequest(), - name="name_value", + client.list_evaluations( + evaluation_service.ListEvaluationsRequest(), + parent="parent_value", ) -def test_get_evaluation_dataset_rest_use_cached_wrapped_rpc(): +def test_list_evaluations_rest_pager(transport: str = "rest"): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + evaluation_service.ListEvaluationsResponse( + evaluations=[ + evaluation.Evaluation(), + evaluation.Evaluation(), + evaluation.Evaluation(), + ], + next_page_token="abc", + ), + evaluation_service.ListEvaluationsResponse( + evaluations=[], + next_page_token="def", + ), + evaluation_service.ListEvaluationsResponse( + evaluations=[ + evaluation.Evaluation(), + ], + next_page_token="ghi", + ), + evaluation_service.ListEvaluationsResponse( + evaluations=[ + evaluation.Evaluation(), + evaluation.Evaluation(), + ], + ), + ) + # Two responses for two calls + response = response + response + + # Wrap the values into proper Response objs + response = tuple( + evaluation_service.ListEvaluationsResponse.to_json(x) for x in response + ) + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values + + sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} + + pager = client.list_evaluations(request=sample_request) + + results = list(pager) + assert len(results) == 6 + assert all(isinstance(i, evaluation.Evaluation) for i in results) + + pages = list(client.list_evaluations(request=sample_request).pages) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token + + +def test_list_evaluation_results_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -16986,7 +18691,7 @@ def test_get_evaluation_dataset_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.get_evaluation_dataset + client._transport.list_evaluation_results in client._transport._wrapped_methods ) @@ -16995,30 +18700,30 @@ def test_get_evaluation_dataset_rest_use_cached_wrapped_rpc(): mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.get_evaluation_dataset] = ( - mock_rpc - ) + client._transport._wrapped_methods[ + client._transport.list_evaluation_results + ] = mock_rpc request = {} - client.get_evaluation_dataset(request) + client.list_evaluation_results(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.get_evaluation_dataset(request) + client.list_evaluation_results(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_get_evaluation_dataset_rest_required_fields( - request_type=evaluation_service.GetEvaluationDatasetRequest, +def test_list_evaluation_results_rest_required_fields( + request_type=evaluation_service.ListEvaluationResultsRequest, ): transport_class = transports.EvaluationServiceRestTransport request_init = {} - request_init["name"] = "" + request_init["parent"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -17029,21 +18734,30 @@ def test_get_evaluation_dataset_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).get_evaluation_dataset._get_unset_required_fields(jsonified_request) + ).list_evaluation_results._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present - jsonified_request["name"] = "name_value" + jsonified_request["parent"] = "parent_value" unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).get_evaluation_dataset._get_unset_required_fields(jsonified_request) + ).list_evaluation_results._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "filter", + "order_by", + "page_size", + "page_token", + ) + ) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone - assert "name" in jsonified_request - assert jsonified_request["name"] == "name_value" + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), @@ -17052,7 +18766,7 @@ def test_get_evaluation_dataset_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = evaluation.EvaluationDataset() + return_value = evaluation_service.ListEvaluationResultsResponse() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -17073,30 +18787,42 @@ def test_get_evaluation_dataset_rest_required_fields( response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation.EvaluationDataset.pb(return_value) + return_value = evaluation_service.ListEvaluationResultsResponse.pb( + return_value + ) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_evaluation_dataset(request) + response = client.list_evaluation_results(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_get_evaluation_dataset_rest_unset_required_fields(): +def test_list_evaluation_results_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.get_evaluation_dataset._get_unset_required_fields({}) - assert set(unset_fields) == (set(()) & set(("name",))) + unset_fields = transport.list_evaluation_results._get_unset_required_fields({}) + assert set(unset_fields) == ( + set( + ( + "filter", + "orderBy", + "pageSize", + "pageToken", + ) + ) + & set(("parent",)) + ) -def test_get_evaluation_dataset_rest_flattened(): +def test_list_evaluation_results_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -17105,16 +18831,16 @@ def test_get_evaluation_dataset_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation.EvaluationDataset() + return_value = evaluation_service.ListEvaluationResultsResponse() # get arguments that satisfy an http rule for this method sample_request = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluationDatasets/sample4" + "parent": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4" } # get truthy value for each flattened field mock_args = dict( - name="name_value", + parent="parent_value", ) mock_args.update(sample_request) @@ -17122,26 +18848,26 @@ def test_get_evaluation_dataset_rest_flattened(): response_value = Response() response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation.EvaluationDataset.pb(return_value) + return_value = evaluation_service.ListEvaluationResultsResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_evaluation_dataset(**mock_args) + client.list_evaluation_results(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1beta/{name=projects/*/locations/*/apps/*/evaluationDatasets/*}" + "%s/v1beta/{parent=projects/*/locations/*/apps/*/evaluations/*}/results" % client.transport._host, args[1], ) -def test_get_evaluation_dataset_rest_flattened_error(transport: str = "rest"): +def test_list_evaluation_results_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -17150,13 +18876,79 @@ def test_get_evaluation_dataset_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.get_evaluation_dataset( - evaluation_service.GetEvaluationDatasetRequest(), - name="name_value", + client.list_evaluation_results( + evaluation_service.ListEvaluationResultsRequest(), + parent="parent_value", ) -def test_get_evaluation_run_rest_use_cached_wrapped_rpc(): +def test_list_evaluation_results_rest_pager(transport: str = "rest"): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + evaluation_service.ListEvaluationResultsResponse( + evaluation_results=[ + evaluation.EvaluationResult(), + evaluation.EvaluationResult(), + evaluation.EvaluationResult(), + ], + next_page_token="abc", + ), + evaluation_service.ListEvaluationResultsResponse( + evaluation_results=[], + next_page_token="def", + ), + evaluation_service.ListEvaluationResultsResponse( + evaluation_results=[ + evaluation.EvaluationResult(), + ], + next_page_token="ghi", + ), + evaluation_service.ListEvaluationResultsResponse( + evaluation_results=[ + evaluation.EvaluationResult(), + evaluation.EvaluationResult(), + ], + ), + ) + # Two responses for two calls + response = response + response + + # Wrap the values into proper Response objs + response = tuple( + evaluation_service.ListEvaluationResultsResponse.to_json(x) + for x in response + ) + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values + + sample_request = { + "parent": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4" + } + + pager = client.list_evaluation_results(request=sample_request) + + results = list(pager) + assert len(results) == 6 + assert all(isinstance(i, evaluation.EvaluationResult) for i in results) + + pages = list(client.list_evaluation_results(request=sample_request).pages) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token + + +def test_list_evaluation_datasets_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -17171,7 +18963,8 @@ def test_get_evaluation_run_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.get_evaluation_run in client._transport._wrapped_methods + client._transport.list_evaluation_datasets + in client._transport._wrapped_methods ) # Replace cached wrapped function with mock @@ -17179,30 +18972,30 @@ def test_get_evaluation_run_rest_use_cached_wrapped_rpc(): mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.get_evaluation_run] = ( - mock_rpc - ) + client._transport._wrapped_methods[ + client._transport.list_evaluation_datasets + ] = mock_rpc request = {} - client.get_evaluation_run(request) + client.list_evaluation_datasets(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.get_evaluation_run(request) + client.list_evaluation_datasets(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_get_evaluation_run_rest_required_fields( - request_type=evaluation_service.GetEvaluationRunRequest, +def test_list_evaluation_datasets_rest_required_fields( + request_type=evaluation_service.ListEvaluationDatasetsRequest, ): transport_class = transports.EvaluationServiceRestTransport request_init = {} - request_init["name"] = "" + request_init["parent"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -17213,21 +19006,30 @@ def test_get_evaluation_run_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).get_evaluation_run._get_unset_required_fields(jsonified_request) + ).list_evaluation_datasets._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present - jsonified_request["name"] = "name_value" + jsonified_request["parent"] = "parent_value" unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).get_evaluation_run._get_unset_required_fields(jsonified_request) + ).list_evaluation_datasets._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "filter", + "order_by", + "page_size", + "page_token", + ) + ) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone - assert "name" in jsonified_request - assert jsonified_request["name"] == "name_value" + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), @@ -17236,7 +19038,7 @@ def test_get_evaluation_run_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = evaluation.EvaluationRun() + return_value = evaluation_service.ListEvaluationDatasetsResponse() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -17257,30 +19059,42 @@ def test_get_evaluation_run_rest_required_fields( response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation.EvaluationRun.pb(return_value) + return_value = evaluation_service.ListEvaluationDatasetsResponse.pb( + return_value + ) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_evaluation_run(request) + response = client.list_evaluation_datasets(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_get_evaluation_run_rest_unset_required_fields(): +def test_list_evaluation_datasets_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.get_evaluation_run._get_unset_required_fields({}) - assert set(unset_fields) == (set(()) & set(("name",))) + unset_fields = transport.list_evaluation_datasets._get_unset_required_fields({}) + assert set(unset_fields) == ( + set( + ( + "filter", + "orderBy", + "pageSize", + "pageToken", + ) + ) + & set(("parent",)) + ) -def test_get_evaluation_run_rest_flattened(): +def test_list_evaluation_datasets_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -17289,16 +19103,14 @@ def test_get_evaluation_run_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation.EvaluationRun() + return_value = evaluation_service.ListEvaluationDatasetsResponse() # get arguments that satisfy an http rule for this method - sample_request = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluationRuns/sample4" - } + sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} # get truthy value for each flattened field mock_args = dict( - name="name_value", + parent="parent_value", ) mock_args.update(sample_request) @@ -17306,41 +19118,107 @@ def test_get_evaluation_run_rest_flattened(): response_value = Response() response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation.EvaluationRun.pb(return_value) + return_value = evaluation_service.ListEvaluationDatasetsResponse.pb( + return_value + ) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_evaluation_run(**mock_args) + client.list_evaluation_datasets(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1beta/{parent=projects/*/locations/*/apps/*}/evaluationDatasets" + % client.transport._host, + args[1], + ) + + +def test_list_evaluation_datasets_rest_flattened_error(transport: str = "rest"): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.list_evaluation_datasets( + evaluation_service.ListEvaluationDatasetsRequest(), + parent="parent_value", + ) + + +def test_list_evaluation_datasets_rest_pager(transport: str = "rest"): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + evaluation_service.ListEvaluationDatasetsResponse( + evaluation_datasets=[ + evaluation.EvaluationDataset(), + evaluation.EvaluationDataset(), + evaluation.EvaluationDataset(), + ], + next_page_token="abc", + ), + evaluation_service.ListEvaluationDatasetsResponse( + evaluation_datasets=[], + next_page_token="def", + ), + evaluation_service.ListEvaluationDatasetsResponse( + evaluation_datasets=[ + evaluation.EvaluationDataset(), + ], + next_page_token="ghi", + ), + evaluation_service.ListEvaluationDatasetsResponse( + evaluation_datasets=[ + evaluation.EvaluationDataset(), + evaluation.EvaluationDataset(), + ], + ), + ) + # Two responses for two calls + response = response + response - # Establish that the underlying call was made with the expected - # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1beta/{name=projects/*/locations/*/apps/*/evaluationRuns/*}" - % client.transport._host, - args[1], + # Wrap the values into proper Response objs + response = tuple( + evaluation_service.ListEvaluationDatasetsResponse.to_json(x) + for x in response ) + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values + sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} -def test_get_evaluation_run_rest_flattened_error(transport: str = "rest"): - client = EvaluationServiceClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, - ) + pager = client.list_evaluation_datasets(request=sample_request) - # Attempting to call a method with both a request object and flattened - # fields is an error. - with pytest.raises(ValueError): - client.get_evaluation_run( - evaluation_service.GetEvaluationRunRequest(), - name="name_value", - ) + results = list(pager) + assert len(results) == 6 + assert all(isinstance(i, evaluation.EvaluationDataset) for i in results) + + pages = list(client.list_evaluation_datasets(request=sample_request).pages) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token -def test_list_evaluations_rest_use_cached_wrapped_rpc(): +def test_list_evaluation_runs_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -17354,32 +19232,34 @@ def test_list_evaluations_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert client._transport.list_evaluations in client._transport._wrapped_methods + assert ( + client._transport.list_evaluation_runs in client._transport._wrapped_methods + ) # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.list_evaluations] = ( + client._transport._wrapped_methods[client._transport.list_evaluation_runs] = ( mock_rpc ) request = {} - client.list_evaluations(request) + client.list_evaluation_runs(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_evaluations(request) + client.list_evaluation_runs(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_list_evaluations_rest_required_fields( - request_type=evaluation_service.ListEvaluationsRequest, +def test_list_evaluation_runs_rest_required_fields( + request_type=evaluation_service.ListEvaluationRunsRequest, ): transport_class = transports.EvaluationServiceRestTransport @@ -17395,7 +19275,7 @@ def test_list_evaluations_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_evaluations._get_unset_required_fields(jsonified_request) + ).list_evaluation_runs._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present @@ -17404,14 +19284,11 @@ def test_list_evaluations_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_evaluations._get_unset_required_fields(jsonified_request) + ).list_evaluation_runs._get_unset_required_fields(jsonified_request) # Check that path parameters and body parameters are not mixing in. assert not set(unset_fields) - set( ( - "evaluation_filter", - "evaluation_run_filter", "filter", - "last_ten_results", "order_by", "page_size", "page_token", @@ -17430,7 +19307,7 @@ def test_list_evaluations_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = evaluation_service.ListEvaluationsResponse() + return_value = evaluation_service.ListEvaluationRunsResponse() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -17451,33 +19328,32 @@ def test_list_evaluations_rest_required_fields( response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation_service.ListEvaluationsResponse.pb(return_value) + return_value = evaluation_service.ListEvaluationRunsResponse.pb( + return_value + ) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_evaluations(request) + response = client.list_evaluation_runs(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_list_evaluations_rest_unset_required_fields(): +def test_list_evaluation_runs_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.list_evaluations._get_unset_required_fields({}) + unset_fields = transport.list_evaluation_runs._get_unset_required_fields({}) assert set(unset_fields) == ( set( ( - "evaluationFilter", - "evaluationRunFilter", "filter", - "lastTenResults", "orderBy", "pageSize", "pageToken", @@ -17487,7 +19363,7 @@ def test_list_evaluations_rest_unset_required_fields(): ) -def test_list_evaluations_rest_flattened(): +def test_list_evaluation_runs_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -17496,7 +19372,7 @@ def test_list_evaluations_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation_service.ListEvaluationsResponse() + return_value = evaluation_service.ListEvaluationRunsResponse() # get arguments that satisfy an http rule for this method sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} @@ -17511,26 +19387,26 @@ def test_list_evaluations_rest_flattened(): response_value = Response() response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation_service.ListEvaluationsResponse.pb(return_value) + return_value = evaluation_service.ListEvaluationRunsResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_evaluations(**mock_args) + client.list_evaluation_runs(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1beta/{parent=projects/*/locations/*/apps/*}/evaluations" + "%s/v1beta/{parent=projects/*/locations/*/apps/*}/evaluationRuns" % client.transport._host, args[1], ) -def test_list_evaluations_rest_flattened_error(transport: str = "rest"): +def test_list_evaluation_runs_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -17539,13 +19415,13 @@ def test_list_evaluations_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.list_evaluations( - evaluation_service.ListEvaluationsRequest(), + client.list_evaluation_runs( + evaluation_service.ListEvaluationRunsRequest(), parent="parent_value", ) -def test_list_evaluations_rest_pager(transport: str = "rest"): +def test_list_evaluation_runs_rest_pager(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -17557,28 +19433,28 @@ def test_list_evaluations_rest_pager(transport: str = "rest"): # with mock.patch.object(path_template, 'transcode') as transcode: # Set the response as a series of pages response = ( - evaluation_service.ListEvaluationsResponse( - evaluations=[ - evaluation.Evaluation(), - evaluation.Evaluation(), - evaluation.Evaluation(), + evaluation_service.ListEvaluationRunsResponse( + evaluation_runs=[ + evaluation.EvaluationRun(), + evaluation.EvaluationRun(), + evaluation.EvaluationRun(), ], next_page_token="abc", ), - evaluation_service.ListEvaluationsResponse( - evaluations=[], + evaluation_service.ListEvaluationRunsResponse( + evaluation_runs=[], next_page_token="def", ), - evaluation_service.ListEvaluationsResponse( - evaluations=[ - evaluation.Evaluation(), + evaluation_service.ListEvaluationRunsResponse( + evaluation_runs=[ + evaluation.EvaluationRun(), ], next_page_token="ghi", ), - evaluation_service.ListEvaluationsResponse( - evaluations=[ - evaluation.Evaluation(), - evaluation.Evaluation(), + evaluation_service.ListEvaluationRunsResponse( + evaluation_runs=[ + evaluation.EvaluationRun(), + evaluation.EvaluationRun(), ], ), ) @@ -17587,7 +19463,7 @@ def test_list_evaluations_rest_pager(transport: str = "rest"): # Wrap the values into proper Response objs response = tuple( - evaluation_service.ListEvaluationsResponse.to_json(x) for x in response + evaluation_service.ListEvaluationRunsResponse.to_json(x) for x in response ) return_values = tuple(Response() for i in response) for return_val, response_val in zip(return_values, response): @@ -17597,18 +19473,18 @@ def test_list_evaluations_rest_pager(transport: str = "rest"): sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} - pager = client.list_evaluations(request=sample_request) + pager = client.list_evaluation_runs(request=sample_request) results = list(pager) assert len(results) == 6 - assert all(isinstance(i, evaluation.Evaluation) for i in results) + assert all(isinstance(i, evaluation.EvaluationRun) for i in results) - pages = list(client.list_evaluations(request=sample_request).pages) + pages = list(client.list_evaluation_runs(request=sample_request).pages) for page_, token in zip(pages, ["abc", "def", "ghi", ""]): assert page_.raw_page.next_page_token == token -def test_list_evaluation_results_rest_use_cached_wrapped_rpc(): +def test_list_evaluation_expectations_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -17623,7 +19499,7 @@ def test_list_evaluation_results_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.list_evaluation_results + client._transport.list_evaluation_expectations in client._transport._wrapped_methods ) @@ -17633,24 +19509,24 @@ def test_list_evaluation_results_rest_use_cached_wrapped_rpc(): "foo" # operation_request.operation in compute client(s) expect a string. ) client._transport._wrapped_methods[ - client._transport.list_evaluation_results + client._transport.list_evaluation_expectations ] = mock_rpc request = {} - client.list_evaluation_results(request) + client.list_evaluation_expectations(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_evaluation_results(request) + client.list_evaluation_expectations(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_list_evaluation_results_rest_required_fields( - request_type=evaluation_service.ListEvaluationResultsRequest, +def test_list_evaluation_expectations_rest_required_fields( + request_type=evaluation_service.ListEvaluationExpectationsRequest, ): transport_class = transports.EvaluationServiceRestTransport @@ -17666,7 +19542,7 @@ def test_list_evaluation_results_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_evaluation_results._get_unset_required_fields(jsonified_request) + ).list_evaluation_expectations._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present @@ -17675,7 +19551,7 @@ def test_list_evaluation_results_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_evaluation_results._get_unset_required_fields(jsonified_request) + ).list_evaluation_expectations._get_unset_required_fields(jsonified_request) # Check that path parameters and body parameters are not mixing in. assert not set(unset_fields) - set( ( @@ -17698,7 +19574,7 @@ def test_list_evaluation_results_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = evaluation_service.ListEvaluationResultsResponse() + return_value = evaluation_service.ListEvaluationExpectationsResponse() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -17719,7 +19595,7 @@ def test_list_evaluation_results_rest_required_fields( response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation_service.ListEvaluationResultsResponse.pb( + return_value = evaluation_service.ListEvaluationExpectationsResponse.pb( return_value ) json_return_value = json_format.MessageToJson(return_value) @@ -17728,19 +19604,19 @@ def test_list_evaluation_results_rest_required_fields( req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_evaluation_results(request) + response = client.list_evaluation_expectations(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_list_evaluation_results_rest_unset_required_fields(): +def test_list_evaluation_expectations_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.list_evaluation_results._get_unset_required_fields({}) + unset_fields = transport.list_evaluation_expectations._get_unset_required_fields({}) assert set(unset_fields) == ( set( ( @@ -17754,7 +19630,7 @@ def test_list_evaluation_results_rest_unset_required_fields(): ) -def test_list_evaluation_results_rest_flattened(): +def test_list_evaluation_expectations_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -17763,12 +19639,10 @@ def test_list_evaluation_results_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation_service.ListEvaluationResultsResponse() + return_value = evaluation_service.ListEvaluationExpectationsResponse() # get arguments that satisfy an http rule for this method - sample_request = { - "parent": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4" - } + sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} # get truthy value for each flattened field mock_args = dict( @@ -17780,26 +19654,28 @@ def test_list_evaluation_results_rest_flattened(): response_value = Response() response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation_service.ListEvaluationResultsResponse.pb(return_value) + return_value = evaluation_service.ListEvaluationExpectationsResponse.pb( + return_value + ) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_evaluation_results(**mock_args) + client.list_evaluation_expectations(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1beta/{parent=projects/*/locations/*/apps/*/evaluations/*}/results" + "%s/v1beta/{parent=projects/*/locations/*/apps/*}/evaluationExpectations" % client.transport._host, args[1], ) -def test_list_evaluation_results_rest_flattened_error(transport: str = "rest"): +def test_list_evaluation_expectations_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -17808,13 +19684,13 @@ def test_list_evaluation_results_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.list_evaluation_results( - evaluation_service.ListEvaluationResultsRequest(), + client.list_evaluation_expectations( + evaluation_service.ListEvaluationExpectationsRequest(), parent="parent_value", ) -def test_list_evaluation_results_rest_pager(transport: str = "rest"): +def test_list_evaluation_expectations_rest_pager(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -17826,28 +19702,28 @@ def test_list_evaluation_results_rest_pager(transport: str = "rest"): # with mock.patch.object(path_template, 'transcode') as transcode: # Set the response as a series of pages response = ( - evaluation_service.ListEvaluationResultsResponse( - evaluation_results=[ - evaluation.EvaluationResult(), - evaluation.EvaluationResult(), - evaluation.EvaluationResult(), + evaluation_service.ListEvaluationExpectationsResponse( + evaluation_expectations=[ + evaluation.EvaluationExpectation(), + evaluation.EvaluationExpectation(), + evaluation.EvaluationExpectation(), ], next_page_token="abc", ), - evaluation_service.ListEvaluationResultsResponse( - evaluation_results=[], + evaluation_service.ListEvaluationExpectationsResponse( + evaluation_expectations=[], next_page_token="def", ), - evaluation_service.ListEvaluationResultsResponse( - evaluation_results=[ - evaluation.EvaluationResult(), + evaluation_service.ListEvaluationExpectationsResponse( + evaluation_expectations=[ + evaluation.EvaluationExpectation(), ], next_page_token="ghi", ), - evaluation_service.ListEvaluationResultsResponse( - evaluation_results=[ - evaluation.EvaluationResult(), - evaluation.EvaluationResult(), + evaluation_service.ListEvaluationExpectationsResponse( + evaluation_expectations=[ + evaluation.EvaluationExpectation(), + evaluation.EvaluationExpectation(), ], ), ) @@ -17856,7 +19732,7 @@ def test_list_evaluation_results_rest_pager(transport: str = "rest"): # Wrap the values into proper Response objs response = tuple( - evaluation_service.ListEvaluationResultsResponse.to_json(x) + evaluation_service.ListEvaluationExpectationsResponse.to_json(x) for x in response ) return_values = tuple(Response() for i in response) @@ -17865,22 +19741,20 @@ def test_list_evaluation_results_rest_pager(transport: str = "rest"): return_val.status_code = 200 req.side_effect = return_values - sample_request = { - "parent": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4" - } + sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} - pager = client.list_evaluation_results(request=sample_request) + pager = client.list_evaluation_expectations(request=sample_request) results = list(pager) assert len(results) == 6 - assert all(isinstance(i, evaluation.EvaluationResult) for i in results) + assert all(isinstance(i, evaluation.EvaluationExpectation) for i in results) - pages = list(client.list_evaluation_results(request=sample_request).pages) + pages = list(client.list_evaluation_expectations(request=sample_request).pages) for page_, token in zip(pages, ["abc", "def", "ghi", ""]): assert page_.raw_page.next_page_token == token -def test_list_evaluation_datasets_rest_use_cached_wrapped_rpc(): +def test_get_evaluation_expectation_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -17895,7 +19769,7 @@ def test_list_evaluation_datasets_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.list_evaluation_datasets + client._transport.get_evaluation_expectation in client._transport._wrapped_methods ) @@ -17905,29 +19779,29 @@ def test_list_evaluation_datasets_rest_use_cached_wrapped_rpc(): "foo" # operation_request.operation in compute client(s) expect a string. ) client._transport._wrapped_methods[ - client._transport.list_evaluation_datasets + client._transport.get_evaluation_expectation ] = mock_rpc request = {} - client.list_evaluation_datasets(request) + client.get_evaluation_expectation(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_evaluation_datasets(request) + client.get_evaluation_expectation(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_list_evaluation_datasets_rest_required_fields( - request_type=evaluation_service.ListEvaluationDatasetsRequest, +def test_get_evaluation_expectation_rest_required_fields( + request_type=evaluation_service.GetEvaluationExpectationRequest, ): transport_class = transports.EvaluationServiceRestTransport request_init = {} - request_init["parent"] = "" + request_init["name"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -17938,30 +19812,21 @@ def test_list_evaluation_datasets_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_evaluation_datasets._get_unset_required_fields(jsonified_request) + ).get_evaluation_expectation._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present - jsonified_request["parent"] = "parent_value" + jsonified_request["name"] = "name_value" unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_evaluation_datasets._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "filter", - "order_by", - "page_size", - "page_token", - ) - ) + ).get_evaluation_expectation._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), @@ -17970,7 +19835,7 @@ def test_list_evaluation_datasets_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = evaluation_service.ListEvaluationDatasetsResponse() + return_value = evaluation.EvaluationExpectation() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -17991,42 +19856,30 @@ def test_list_evaluation_datasets_rest_required_fields( response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation_service.ListEvaluationDatasetsResponse.pb( - return_value - ) + return_value = evaluation.EvaluationExpectation.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_evaluation_datasets(request) + response = client.get_evaluation_expectation(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_list_evaluation_datasets_rest_unset_required_fields(): +def test_get_evaluation_expectation_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.list_evaluation_datasets._get_unset_required_fields({}) - assert set(unset_fields) == ( - set( - ( - "filter", - "orderBy", - "pageSize", - "pageToken", - ) - ) - & set(("parent",)) - ) + unset_fields = transport.get_evaluation_expectation._get_unset_required_fields({}) + assert set(unset_fields) == (set(()) & set(("name",))) -def test_list_evaluation_datasets_rest_flattened(): +def test_get_evaluation_expectation_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -18035,14 +19888,16 @@ def test_list_evaluation_datasets_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation_service.ListEvaluationDatasetsResponse() + return_value = evaluation.EvaluationExpectation() # get arguments that satisfy an http rule for this method - sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} + sample_request = { + "name": "projects/sample1/locations/sample2/apps/sample3/evaluationExpectations/sample4" + } # get truthy value for each flattened field mock_args = dict( - parent="parent_value", + name="name_value", ) mock_args.update(sample_request) @@ -18050,28 +19905,26 @@ def test_list_evaluation_datasets_rest_flattened(): response_value = Response() response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation_service.ListEvaluationDatasetsResponse.pb( - return_value - ) + return_value = evaluation.EvaluationExpectation.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_evaluation_datasets(**mock_args) + client.get_evaluation_expectation(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1beta/{parent=projects/*/locations/*/apps/*}/evaluationDatasets" + "%s/v1beta/{name=projects/*/locations/*/apps/*/evaluationExpectations/*}" % client.transport._host, args[1], ) -def test_list_evaluation_datasets_rest_flattened_error(transport: str = "rest"): +def test_get_evaluation_expectation_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -18080,77 +19933,13 @@ def test_list_evaluation_datasets_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.list_evaluation_datasets( - evaluation_service.ListEvaluationDatasetsRequest(), - parent="parent_value", - ) - - -def test_list_evaluation_datasets_rest_pager(transport: str = "rest"): - client = EvaluationServiceClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, - ) - - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # TODO(kbandes): remove this mock unless there's a good reason for it. - # with mock.patch.object(path_template, 'transcode') as transcode: - # Set the response as a series of pages - response = ( - evaluation_service.ListEvaluationDatasetsResponse( - evaluation_datasets=[ - evaluation.EvaluationDataset(), - evaluation.EvaluationDataset(), - evaluation.EvaluationDataset(), - ], - next_page_token="abc", - ), - evaluation_service.ListEvaluationDatasetsResponse( - evaluation_datasets=[], - next_page_token="def", - ), - evaluation_service.ListEvaluationDatasetsResponse( - evaluation_datasets=[ - evaluation.EvaluationDataset(), - ], - next_page_token="ghi", - ), - evaluation_service.ListEvaluationDatasetsResponse( - evaluation_datasets=[ - evaluation.EvaluationDataset(), - evaluation.EvaluationDataset(), - ], - ), - ) - # Two responses for two calls - response = response + response - - # Wrap the values into proper Response objs - response = tuple( - evaluation_service.ListEvaluationDatasetsResponse.to_json(x) - for x in response + client.get_evaluation_expectation( + evaluation_service.GetEvaluationExpectationRequest(), + name="name_value", ) - return_values = tuple(Response() for i in response) - for return_val, response_val in zip(return_values, response): - return_val._content = response_val.encode("UTF-8") - return_val.status_code = 200 - req.side_effect = return_values - - sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} - - pager = client.list_evaluation_datasets(request=sample_request) - - results = list(pager) - assert len(results) == 6 - assert all(isinstance(i, evaluation.EvaluationDataset) for i in results) - - pages = list(client.list_evaluation_datasets(request=sample_request).pages) - for page_, token in zip(pages, ["abc", "def", "ghi", ""]): - assert page_.raw_page.next_page_token == token -def test_list_evaluation_runs_rest_use_cached_wrapped_rpc(): +def test_create_evaluation_expectation_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -18165,7 +19954,8 @@ def test_list_evaluation_runs_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.list_evaluation_runs in client._transport._wrapped_methods + client._transport.create_evaluation_expectation + in client._transport._wrapped_methods ) # Replace cached wrapped function with mock @@ -18173,25 +19963,25 @@ def test_list_evaluation_runs_rest_use_cached_wrapped_rpc(): mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.list_evaluation_runs] = ( - mock_rpc - ) + client._transport._wrapped_methods[ + client._transport.create_evaluation_expectation + ] = mock_rpc request = {} - client.list_evaluation_runs(request) + client.create_evaluation_expectation(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_evaluation_runs(request) + client.create_evaluation_expectation(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_list_evaluation_runs_rest_required_fields( - request_type=evaluation_service.ListEvaluationRunsRequest, +def test_create_evaluation_expectation_rest_required_fields( + request_type=evaluation_service.CreateEvaluationExpectationRequest, ): transport_class = transports.EvaluationServiceRestTransport @@ -18207,7 +19997,7 @@ def test_list_evaluation_runs_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_evaluation_runs._get_unset_required_fields(jsonified_request) + ).create_evaluation_expectation._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present @@ -18216,16 +20006,9 @@ def test_list_evaluation_runs_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_evaluation_runs._get_unset_required_fields(jsonified_request) + ).create_evaluation_expectation._get_unset_required_fields(jsonified_request) # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "filter", - "order_by", - "page_size", - "page_token", - ) - ) + assert not set(unset_fields) - set(("evaluation_expectation_id",)) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone @@ -18239,7 +20022,7 @@ def test_list_evaluation_runs_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = evaluation_service.ListEvaluationRunsResponse() + return_value = evaluation.EvaluationExpectation() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -18251,51 +20034,50 @@ def test_list_evaluation_runs_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "get", + "method": "post", "query_params": pb_request, } + transcode_result["body"] = pb_request transcode.return_value = transcode_result response_value = Response() response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation_service.ListEvaluationRunsResponse.pb( - return_value - ) + return_value = evaluation.EvaluationExpectation.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_evaluation_runs(request) + response = client.create_evaluation_expectation(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_list_evaluation_runs_rest_unset_required_fields(): +def test_create_evaluation_expectation_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.list_evaluation_runs._get_unset_required_fields({}) + unset_fields = transport.create_evaluation_expectation._get_unset_required_fields( + {} + ) assert set(unset_fields) == ( - set( + set(("evaluationExpectationId",)) + & set( ( - "filter", - "orderBy", - "pageSize", - "pageToken", + "parent", + "evaluationExpectation", ) ) - & set(("parent",)) ) -def test_list_evaluation_runs_rest_flattened(): +def test_create_evaluation_expectation_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -18304,7 +20086,7 @@ def test_list_evaluation_runs_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation_service.ListEvaluationRunsResponse() + return_value = evaluation.EvaluationExpectation() # get arguments that satisfy an http rule for this method sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} @@ -18312,111 +20094,60 @@ def test_list_evaluation_runs_rest_flattened(): # get truthy value for each flattened field mock_args = dict( parent="parent_value", - ) - mock_args.update(sample_request) - - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - # Convert return value to protobuf type - return_value = evaluation_service.ListEvaluationRunsResponse.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - - client.list_evaluation_runs(**mock_args) - - # Establish that the underlying call was made with the expected - # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1beta/{parent=projects/*/locations/*/apps/*}/evaluationRuns" - % client.transport._host, - args[1], - ) - - -def test_list_evaluation_runs_rest_flattened_error(transport: str = "rest"): - client = EvaluationServiceClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, - ) - - # Attempting to call a method with both a request object and flattened - # fields is an error. - with pytest.raises(ValueError): - client.list_evaluation_runs( - evaluation_service.ListEvaluationRunsRequest(), - parent="parent_value", - ) - - -def test_list_evaluation_runs_rest_pager(transport: str = "rest"): - client = EvaluationServiceClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, - ) - - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # TODO(kbandes): remove this mock unless there's a good reason for it. - # with mock.patch.object(path_template, 'transcode') as transcode: - # Set the response as a series of pages - response = ( - evaluation_service.ListEvaluationRunsResponse( - evaluation_runs=[ - evaluation.EvaluationRun(), - evaluation.EvaluationRun(), - evaluation.EvaluationRun(), - ], - next_page_token="abc", - ), - evaluation_service.ListEvaluationRunsResponse( - evaluation_runs=[], - next_page_token="def", - ), - evaluation_service.ListEvaluationRunsResponse( - evaluation_runs=[ - evaluation.EvaluationRun(), - ], - next_page_token="ghi", - ), - evaluation_service.ListEvaluationRunsResponse( - evaluation_runs=[ - evaluation.EvaluationRun(), - evaluation.EvaluationRun(), - ], + evaluation_expectation=evaluation.EvaluationExpectation( + llm_criteria=evaluation.EvaluationExpectation.LlmCriteria( + prompt="prompt_value" + ) ), + evaluation_expectation_id="evaluation_expectation_id_value", ) - # Two responses for two calls - response = response + response + mock_args.update(sample_request) - # Wrap the values into proper Response objs - response = tuple( - evaluation_service.ListEvaluationRunsResponse.to_json(x) for x in response - ) - return_values = tuple(Response() for i in response) - for return_val, response_val in zip(return_values, response): - return_val._content = response_val.encode("UTF-8") - return_val.status_code = 200 - req.side_effect = return_values + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = evaluation.EvaluationExpectation.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} + client.create_evaluation_expectation(**mock_args) - pager = client.list_evaluation_runs(request=sample_request) + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1beta/{parent=projects/*/locations/*/apps/*}/evaluationExpectations" + % client.transport._host, + args[1], + ) - results = list(pager) - assert len(results) == 6 - assert all(isinstance(i, evaluation.EvaluationRun) for i in results) - pages = list(client.list_evaluation_runs(request=sample_request).pages) - for page_, token in zip(pages, ["abc", "def", "ghi", ""]): - assert page_.raw_page.next_page_token == token +def test_create_evaluation_expectation_rest_flattened_error(transport: str = "rest"): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.create_evaluation_expectation( + evaluation_service.CreateEvaluationExpectationRequest(), + parent="parent_value", + evaluation_expectation=evaluation.EvaluationExpectation( + llm_criteria=evaluation.EvaluationExpectation.LlmCriteria( + prompt="prompt_value" + ) + ), + evaluation_expectation_id="evaluation_expectation_id_value", + ) -def test_list_evaluation_expectations_rest_use_cached_wrapped_rpc(): +def test_update_evaluation_expectation_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -18431,7 +20162,7 @@ def test_list_evaluation_expectations_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.list_evaluation_expectations + client._transport.update_evaluation_expectation in client._transport._wrapped_methods ) @@ -18441,29 +20172,28 @@ def test_list_evaluation_expectations_rest_use_cached_wrapped_rpc(): "foo" # operation_request.operation in compute client(s) expect a string. ) client._transport._wrapped_methods[ - client._transport.list_evaluation_expectations + client._transport.update_evaluation_expectation ] = mock_rpc request = {} - client.list_evaluation_expectations(request) + client.update_evaluation_expectation(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_evaluation_expectations(request) + client.update_evaluation_expectation(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_list_evaluation_expectations_rest_required_fields( - request_type=evaluation_service.ListEvaluationExpectationsRequest, +def test_update_evaluation_expectation_rest_required_fields( + request_type=evaluation_service.UpdateEvaluationExpectationRequest, ): transport_class = transports.EvaluationServiceRestTransport request_init = {} - request_init["parent"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -18474,30 +20204,19 @@ def test_list_evaluation_expectations_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_evaluation_expectations._get_unset_required_fields(jsonified_request) + ).update_evaluation_expectation._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present - jsonified_request["parent"] = "parent_value" - unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_evaluation_expectations._get_unset_required_fields(jsonified_request) + ).update_evaluation_expectation._get_unset_required_fields(jsonified_request) # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "filter", - "order_by", - "page_size", - "page_token", - ) - ) + assert not set(unset_fields) - set(("update_mask",)) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), @@ -18506,7 +20225,7 @@ def test_list_evaluation_expectations_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = evaluation_service.ListEvaluationExpectationsResponse() + return_value = evaluation.EvaluationExpectation() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -18518,51 +20237,42 @@ def test_list_evaluation_expectations_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "get", + "method": "patch", "query_params": pb_request, } + transcode_result["body"] = pb_request transcode.return_value = transcode_result response_value = Response() response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation_service.ListEvaluationExpectationsResponse.pb( - return_value - ) + return_value = evaluation.EvaluationExpectation.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_evaluation_expectations(request) + response = client.update_evaluation_expectation(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_list_evaluation_expectations_rest_unset_required_fields(): +def test_update_evaluation_expectation_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.list_evaluation_expectations._get_unset_required_fields({}) - assert set(unset_fields) == ( - set( - ( - "filter", - "orderBy", - "pageSize", - "pageToken", - ) - ) - & set(("parent",)) + unset_fields = transport.update_evaluation_expectation._get_unset_required_fields( + {} ) + assert set(unset_fields) == (set(("updateMask",)) & set(("evaluationExpectation",))) -def test_list_evaluation_expectations_rest_flattened(): +def test_update_evaluation_expectation_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -18571,14 +20281,23 @@ def test_list_evaluation_expectations_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation_service.ListEvaluationExpectationsResponse() + return_value = evaluation.EvaluationExpectation() # get arguments that satisfy an http rule for this method - sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} + sample_request = { + "evaluation_expectation": { + "name": "projects/sample1/locations/sample2/apps/sample3/evaluationExpectations/sample4" + } + } # get truthy value for each flattened field mock_args = dict( - parent="parent_value", + evaluation_expectation=evaluation.EvaluationExpectation( + llm_criteria=evaluation.EvaluationExpectation.LlmCriteria( + prompt="prompt_value" + ) + ), + update_mask=field_mask_pb2.FieldMask(paths=["paths_value"]), ) mock_args.update(sample_request) @@ -18586,28 +20305,26 @@ def test_list_evaluation_expectations_rest_flattened(): response_value = Response() response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation_service.ListEvaluationExpectationsResponse.pb( - return_value - ) + return_value = evaluation.EvaluationExpectation.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_evaluation_expectations(**mock_args) + client.update_evaluation_expectation(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1beta/{parent=projects/*/locations/*/apps/*}/evaluationExpectations" + "%s/v1beta/{evaluation_expectation.name=projects/*/locations/*/apps/*/evaluationExpectations/*}" % client.transport._host, args[1], ) -def test_list_evaluation_expectations_rest_flattened_error(transport: str = "rest"): +def test_update_evaluation_expectation_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -18616,77 +20333,18 @@ def test_list_evaluation_expectations_rest_flattened_error(transport: str = "res # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.list_evaluation_expectations( - evaluation_service.ListEvaluationExpectationsRequest(), - parent="parent_value", - ) - - -def test_list_evaluation_expectations_rest_pager(transport: str = "rest"): - client = EvaluationServiceClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, - ) - - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # TODO(kbandes): remove this mock unless there's a good reason for it. - # with mock.patch.object(path_template, 'transcode') as transcode: - # Set the response as a series of pages - response = ( - evaluation_service.ListEvaluationExpectationsResponse( - evaluation_expectations=[ - evaluation.EvaluationExpectation(), - evaluation.EvaluationExpectation(), - evaluation.EvaluationExpectation(), - ], - next_page_token="abc", - ), - evaluation_service.ListEvaluationExpectationsResponse( - evaluation_expectations=[], - next_page_token="def", - ), - evaluation_service.ListEvaluationExpectationsResponse( - evaluation_expectations=[ - evaluation.EvaluationExpectation(), - ], - next_page_token="ghi", - ), - evaluation_service.ListEvaluationExpectationsResponse( - evaluation_expectations=[ - evaluation.EvaluationExpectation(), - evaluation.EvaluationExpectation(), - ], + client.update_evaluation_expectation( + evaluation_service.UpdateEvaluationExpectationRequest(), + evaluation_expectation=evaluation.EvaluationExpectation( + llm_criteria=evaluation.EvaluationExpectation.LlmCriteria( + prompt="prompt_value" + ) ), + update_mask=field_mask_pb2.FieldMask(paths=["paths_value"]), ) - # Two responses for two calls - response = response + response - - # Wrap the values into proper Response objs - response = tuple( - evaluation_service.ListEvaluationExpectationsResponse.to_json(x) - for x in response - ) - return_values = tuple(Response() for i in response) - for return_val, response_val in zip(return_values, response): - return_val._content = response_val.encode("UTF-8") - return_val.status_code = 200 - req.side_effect = return_values - - sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} - - pager = client.list_evaluation_expectations(request=sample_request) - - results = list(pager) - assert len(results) == 6 - assert all(isinstance(i, evaluation.EvaluationExpectation) for i in results) - - pages = list(client.list_evaluation_expectations(request=sample_request).pages) - for page_, token in zip(pages, ["abc", "def", "ghi", ""]): - assert page_.raw_page.next_page_token == token -def test_get_evaluation_expectation_rest_use_cached_wrapped_rpc(): +def test_delete_evaluation_expectation_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -18701,7 +20359,7 @@ def test_get_evaluation_expectation_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.get_evaluation_expectation + client._transport.delete_evaluation_expectation in client._transport._wrapped_methods ) @@ -18711,24 +20369,24 @@ def test_get_evaluation_expectation_rest_use_cached_wrapped_rpc(): "foo" # operation_request.operation in compute client(s) expect a string. ) client._transport._wrapped_methods[ - client._transport.get_evaluation_expectation + client._transport.delete_evaluation_expectation ] = mock_rpc request = {} - client.get_evaluation_expectation(request) + client.delete_evaluation_expectation(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.get_evaluation_expectation(request) + client.delete_evaluation_expectation(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_get_evaluation_expectation_rest_required_fields( - request_type=evaluation_service.GetEvaluationExpectationRequest, +def test_delete_evaluation_expectation_rest_required_fields( + request_type=evaluation_service.DeleteEvaluationExpectationRequest, ): transport_class = transports.EvaluationServiceRestTransport @@ -18744,7 +20402,7 @@ def test_get_evaluation_expectation_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).get_evaluation_expectation._get_unset_required_fields(jsonified_request) + ).delete_evaluation_expectation._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present @@ -18753,7 +20411,9 @@ def test_get_evaluation_expectation_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).get_evaluation_expectation._get_unset_required_fields(jsonified_request) + ).delete_evaluation_expectation._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set(("etag",)) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone @@ -18767,7 +20427,7 @@ def test_get_evaluation_expectation_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = evaluation.EvaluationExpectation() + return_value = None # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -18779,39 +20439,38 @@ def test_get_evaluation_expectation_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "get", + "method": "delete", "query_params": pb_request, } transcode.return_value = transcode_result response_value = Response() response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = evaluation.EvaluationExpectation.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) + json_return_value = "" response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_evaluation_expectation(request) + response = client.delete_evaluation_expectation(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_get_evaluation_expectation_rest_unset_required_fields(): +def test_delete_evaluation_expectation_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.get_evaluation_expectation._get_unset_required_fields({}) - assert set(unset_fields) == (set(()) & set(("name",))) + unset_fields = transport.delete_evaluation_expectation._get_unset_required_fields( + {} + ) + assert set(unset_fields) == (set(("etag",)) & set(("name",))) -def test_get_evaluation_expectation_rest_flattened(): +def test_delete_evaluation_expectation_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -18820,7 +20479,7 @@ def test_get_evaluation_expectation_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation.EvaluationExpectation() + return_value = None # get arguments that satisfy an http rule for this method sample_request = { @@ -18836,14 +20495,12 @@ def test_get_evaluation_expectation_rest_flattened(): # Wrap the value into a proper Response obj response_value = Response() response_value.status_code = 200 - # Convert return value to protobuf type - return_value = evaluation.EvaluationExpectation.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) + json_return_value = "" response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_evaluation_expectation(**mock_args) + client.delete_evaluation_expectation(**mock_args) # Establish that the underlying call was made with the expected # request object values. @@ -18856,7 +20513,7 @@ def test_get_evaluation_expectation_rest_flattened(): ) -def test_get_evaluation_expectation_rest_flattened_error(transport: str = "rest"): +def test_delete_evaluation_expectation_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -18865,13 +20522,13 @@ def test_get_evaluation_expectation_rest_flattened_error(transport: str = "rest" # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.get_evaluation_expectation( - evaluation_service.GetEvaluationExpectationRequest(), + client.delete_evaluation_expectation( + evaluation_service.DeleteEvaluationExpectationRequest(), name="name_value", ) -def test_create_evaluation_expectation_rest_use_cached_wrapped_rpc(): +def test_create_scheduled_evaluation_run_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -18886,7 +20543,7 @@ def test_create_evaluation_expectation_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.create_evaluation_expectation + client._transport.create_scheduled_evaluation_run in client._transport._wrapped_methods ) @@ -18896,24 +20553,24 @@ def test_create_evaluation_expectation_rest_use_cached_wrapped_rpc(): "foo" # operation_request.operation in compute client(s) expect a string. ) client._transport._wrapped_methods[ - client._transport.create_evaluation_expectation + client._transport.create_scheduled_evaluation_run ] = mock_rpc request = {} - client.create_evaluation_expectation(request) + client.create_scheduled_evaluation_run(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.create_evaluation_expectation(request) + client.create_scheduled_evaluation_run(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_create_evaluation_expectation_rest_required_fields( - request_type=evaluation_service.CreateEvaluationExpectationRequest, +def test_create_scheduled_evaluation_run_rest_required_fields( + request_type=evaluation_service.CreateScheduledEvaluationRunRequest, ): transport_class = transports.EvaluationServiceRestTransport @@ -18929,7 +20586,7 @@ def test_create_evaluation_expectation_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).create_evaluation_expectation._get_unset_required_fields(jsonified_request) + ).create_scheduled_evaluation_run._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present @@ -18938,9 +20595,9 @@ def test_create_evaluation_expectation_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).create_evaluation_expectation._get_unset_required_fields(jsonified_request) + ).create_scheduled_evaluation_run._get_unset_required_fields(jsonified_request) # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set(("evaluation_expectation_id",)) + assert not set(unset_fields) - set(("scheduled_evaluation_run_id",)) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone @@ -18954,7 +20611,7 @@ def test_create_evaluation_expectation_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = evaluation.EvaluationExpectation() + return_value = evaluation.ScheduledEvaluationRun() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -18976,40 +20633,40 @@ def test_create_evaluation_expectation_rest_required_fields( response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation.EvaluationExpectation.pb(return_value) + return_value = evaluation.ScheduledEvaluationRun.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.create_evaluation_expectation(request) + response = client.create_scheduled_evaluation_run(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_create_evaluation_expectation_rest_unset_required_fields(): +def test_create_scheduled_evaluation_run_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.create_evaluation_expectation._get_unset_required_fields( + unset_fields = transport.create_scheduled_evaluation_run._get_unset_required_fields( {} ) assert set(unset_fields) == ( - set(("evaluationExpectationId",)) + set(("scheduledEvaluationRunId",)) & set( ( "parent", - "evaluationExpectation", + "scheduledEvaluationRun", ) ) ) -def test_create_evaluation_expectation_rest_flattened(): +def test_create_scheduled_evaluation_run_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -19018,7 +20675,7 @@ def test_create_evaluation_expectation_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation.EvaluationExpectation() + return_value = evaluation.ScheduledEvaluationRun() # get arguments that satisfy an http rule for this method sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} @@ -19026,12 +20683,10 @@ def test_create_evaluation_expectation_rest_flattened(): # get truthy value for each flattened field mock_args = dict( parent="parent_value", - evaluation_expectation=evaluation.EvaluationExpectation( - llm_criteria=evaluation.EvaluationExpectation.LlmCriteria( - prompt="prompt_value" - ) + scheduled_evaluation_run=evaluation.ScheduledEvaluationRun( + name="name_value" ), - evaluation_expectation_id="evaluation_expectation_id_value", + scheduled_evaluation_run_id="scheduled_evaluation_run_id_value", ) mock_args.update(sample_request) @@ -19039,26 +20694,26 @@ def test_create_evaluation_expectation_rest_flattened(): response_value = Response() response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation.EvaluationExpectation.pb(return_value) + return_value = evaluation.ScheduledEvaluationRun.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.create_evaluation_expectation(**mock_args) + client.create_scheduled_evaluation_run(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1beta/{parent=projects/*/locations/*/apps/*}/evaluationExpectations" + "%s/v1beta/{parent=projects/*/locations/*/apps/*}/scheduledEvaluationRuns" % client.transport._host, args[1], ) -def test_create_evaluation_expectation_rest_flattened_error(transport: str = "rest"): +def test_create_scheduled_evaluation_run_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -19067,19 +20722,17 @@ def test_create_evaluation_expectation_rest_flattened_error(transport: str = "re # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.create_evaluation_expectation( - evaluation_service.CreateEvaluationExpectationRequest(), + client.create_scheduled_evaluation_run( + evaluation_service.CreateScheduledEvaluationRunRequest(), parent="parent_value", - evaluation_expectation=evaluation.EvaluationExpectation( - llm_criteria=evaluation.EvaluationExpectation.LlmCriteria( - prompt="prompt_value" - ) + scheduled_evaluation_run=evaluation.ScheduledEvaluationRun( + name="name_value" ), - evaluation_expectation_id="evaluation_expectation_id_value", + scheduled_evaluation_run_id="scheduled_evaluation_run_id_value", ) -def test_update_evaluation_expectation_rest_use_cached_wrapped_rpc(): +def test_get_scheduled_evaluation_run_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -19094,7 +20747,7 @@ def test_update_evaluation_expectation_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.update_evaluation_expectation + client._transport.get_scheduled_evaluation_run in client._transport._wrapped_methods ) @@ -19104,28 +20757,29 @@ def test_update_evaluation_expectation_rest_use_cached_wrapped_rpc(): "foo" # operation_request.operation in compute client(s) expect a string. ) client._transport._wrapped_methods[ - client._transport.update_evaluation_expectation + client._transport.get_scheduled_evaluation_run ] = mock_rpc request = {} - client.update_evaluation_expectation(request) + client.get_scheduled_evaluation_run(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.update_evaluation_expectation(request) + client.get_scheduled_evaluation_run(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_update_evaluation_expectation_rest_required_fields( - request_type=evaluation_service.UpdateEvaluationExpectationRequest, +def test_get_scheduled_evaluation_run_rest_required_fields( + request_type=evaluation_service.GetScheduledEvaluationRunRequest, ): transport_class = transports.EvaluationServiceRestTransport request_init = {} + request_init["name"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -19136,19 +20790,21 @@ def test_update_evaluation_expectation_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).update_evaluation_expectation._get_unset_required_fields(jsonified_request) + ).get_scheduled_evaluation_run._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present + jsonified_request["name"] = "name_value" + unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).update_evaluation_expectation._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set(("update_mask",)) + ).get_scheduled_evaluation_run._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), @@ -19157,7 +20813,7 @@ def test_update_evaluation_expectation_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = evaluation.EvaluationExpectation() + return_value = evaluation.ScheduledEvaluationRun() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -19169,42 +20825,39 @@ def test_update_evaluation_expectation_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "patch", + "method": "get", "query_params": pb_request, } - transcode_result["body"] = pb_request transcode.return_value = transcode_result response_value = Response() response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation.EvaluationExpectation.pb(return_value) + return_value = evaluation.ScheduledEvaluationRun.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.update_evaluation_expectation(request) + response = client.get_scheduled_evaluation_run(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_update_evaluation_expectation_rest_unset_required_fields(): +def test_get_scheduled_evaluation_run_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.update_evaluation_expectation._get_unset_required_fields( - {} - ) - assert set(unset_fields) == (set(("updateMask",)) & set(("evaluationExpectation",))) + unset_fields = transport.get_scheduled_evaluation_run._get_unset_required_fields({}) + assert set(unset_fields) == (set(()) & set(("name",))) -def test_update_evaluation_expectation_rest_flattened(): +def test_get_scheduled_evaluation_run_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -19213,23 +20866,16 @@ def test_update_evaluation_expectation_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation.EvaluationExpectation() + return_value = evaluation.ScheduledEvaluationRun() # get arguments that satisfy an http rule for this method sample_request = { - "evaluation_expectation": { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluationExpectations/sample4" - } + "name": "projects/sample1/locations/sample2/apps/sample3/scheduledEvaluationRuns/sample4" } # get truthy value for each flattened field mock_args = dict( - evaluation_expectation=evaluation.EvaluationExpectation( - llm_criteria=evaluation.EvaluationExpectation.LlmCriteria( - prompt="prompt_value" - ) - ), - update_mask=field_mask_pb2.FieldMask(paths=["paths_value"]), + name="name_value", ) mock_args.update(sample_request) @@ -19237,26 +20883,26 @@ def test_update_evaluation_expectation_rest_flattened(): response_value = Response() response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation.EvaluationExpectation.pb(return_value) + return_value = evaluation.ScheduledEvaluationRun.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.update_evaluation_expectation(**mock_args) + client.get_scheduled_evaluation_run(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1beta/{evaluation_expectation.name=projects/*/locations/*/apps/*/evaluationExpectations/*}" + "%s/v1beta/{name=projects/*/locations/*/apps/*/scheduledEvaluationRuns/*}" % client.transport._host, args[1], ) -def test_update_evaluation_expectation_rest_flattened_error(transport: str = "rest"): +def test_get_scheduled_evaluation_run_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -19265,18 +20911,13 @@ def test_update_evaluation_expectation_rest_flattened_error(transport: str = "re # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.update_evaluation_expectation( - evaluation_service.UpdateEvaluationExpectationRequest(), - evaluation_expectation=evaluation.EvaluationExpectation( - llm_criteria=evaluation.EvaluationExpectation.LlmCriteria( - prompt="prompt_value" - ) - ), - update_mask=field_mask_pb2.FieldMask(paths=["paths_value"]), + client.get_scheduled_evaluation_run( + evaluation_service.GetScheduledEvaluationRunRequest(), + name="name_value", ) -def test_delete_evaluation_expectation_rest_use_cached_wrapped_rpc(): +def test_list_scheduled_evaluation_runs_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -19291,7 +20932,7 @@ def test_delete_evaluation_expectation_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.delete_evaluation_expectation + client._transport.list_scheduled_evaluation_runs in client._transport._wrapped_methods ) @@ -19301,29 +20942,29 @@ def test_delete_evaluation_expectation_rest_use_cached_wrapped_rpc(): "foo" # operation_request.operation in compute client(s) expect a string. ) client._transport._wrapped_methods[ - client._transport.delete_evaluation_expectation + client._transport.list_scheduled_evaluation_runs ] = mock_rpc request = {} - client.delete_evaluation_expectation(request) + client.list_scheduled_evaluation_runs(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.delete_evaluation_expectation(request) + client.list_scheduled_evaluation_runs(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_delete_evaluation_expectation_rest_required_fields( - request_type=evaluation_service.DeleteEvaluationExpectationRequest, +def test_list_scheduled_evaluation_runs_rest_required_fields( + request_type=evaluation_service.ListScheduledEvaluationRunsRequest, ): transport_class = transports.EvaluationServiceRestTransport request_init = {} - request_init["name"] = "" + request_init["parent"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -19334,23 +20975,30 @@ def test_delete_evaluation_expectation_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).delete_evaluation_expectation._get_unset_required_fields(jsonified_request) + ).list_scheduled_evaluation_runs._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present - jsonified_request["name"] = "name_value" + jsonified_request["parent"] = "parent_value" unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).delete_evaluation_expectation._get_unset_required_fields(jsonified_request) + ).list_scheduled_evaluation_runs._get_unset_required_fields(jsonified_request) # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set(("etag",)) + assert not set(unset_fields) - set( + ( + "filter", + "order_by", + "page_size", + "page_token", + ) + ) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone - assert "name" in jsonified_request - assert jsonified_request["name"] == "name_value" + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), @@ -19359,7 +21007,7 @@ def test_delete_evaluation_expectation_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = None + return_value = evaluation_service.ListScheduledEvaluationRunsResponse() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -19371,38 +21019,53 @@ def test_delete_evaluation_expectation_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "delete", + "method": "get", "query_params": pb_request, } transcode.return_value = transcode_result response_value = Response() response_value.status_code = 200 - json_return_value = "" + + # Convert return value to protobuf type + return_value = evaluation_service.ListScheduledEvaluationRunsResponse.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.delete_evaluation_expectation(request) + response = client.list_scheduled_evaluation_runs(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_delete_evaluation_expectation_rest_unset_required_fields(): +def test_list_scheduled_evaluation_runs_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.delete_evaluation_expectation._get_unset_required_fields( + unset_fields = transport.list_scheduled_evaluation_runs._get_unset_required_fields( {} ) - assert set(unset_fields) == (set(("etag",)) & set(("name",))) + assert set(unset_fields) == ( + set( + ( + "filter", + "orderBy", + "pageSize", + "pageToken", + ) + ) + & set(("parent",)) + ) -def test_delete_evaluation_expectation_rest_flattened(): +def test_list_scheduled_evaluation_runs_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -19411,56 +21074,124 @@ def test_delete_evaluation_expectation_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = None + return_value = evaluation_service.ListScheduledEvaluationRunsResponse() # get arguments that satisfy an http rule for this method - sample_request = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluationExpectations/sample4" - } + sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} # get truthy value for each flattened field mock_args = dict( - name="name_value", + parent="parent_value", ) mock_args.update(sample_request) # Wrap the value into a proper Response obj response_value = Response() response_value.status_code = 200 - json_return_value = "" + # Convert return value to protobuf type + return_value = evaluation_service.ListScheduledEvaluationRunsResponse.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.delete_evaluation_expectation(**mock_args) + client.list_scheduled_evaluation_runs(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1beta/{name=projects/*/locations/*/apps/*/evaluationExpectations/*}" + "%s/v1beta/{parent=projects/*/locations/*/apps/*}/scheduledEvaluationRuns" % client.transport._host, args[1], ) -def test_delete_evaluation_expectation_rest_flattened_error(transport: str = "rest"): +def test_list_scheduled_evaluation_runs_rest_flattened_error(transport: str = "rest"): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.list_scheduled_evaluation_runs( + evaluation_service.ListScheduledEvaluationRunsRequest(), + parent="parent_value", + ) + + +def test_list_scheduled_evaluation_runs_rest_pager(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, ) - # Attempting to call a method with both a request object and flattened - # fields is an error. - with pytest.raises(ValueError): - client.delete_evaluation_expectation( - evaluation_service.DeleteEvaluationExpectationRequest(), - name="name_value", + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + evaluation_service.ListScheduledEvaluationRunsResponse( + scheduled_evaluation_runs=[ + evaluation.ScheduledEvaluationRun(), + evaluation.ScheduledEvaluationRun(), + evaluation.ScheduledEvaluationRun(), + ], + next_page_token="abc", + ), + evaluation_service.ListScheduledEvaluationRunsResponse( + scheduled_evaluation_runs=[], + next_page_token="def", + ), + evaluation_service.ListScheduledEvaluationRunsResponse( + scheduled_evaluation_runs=[ + evaluation.ScheduledEvaluationRun(), + ], + next_page_token="ghi", + ), + evaluation_service.ListScheduledEvaluationRunsResponse( + scheduled_evaluation_runs=[ + evaluation.ScheduledEvaluationRun(), + evaluation.ScheduledEvaluationRun(), + ], + ), + ) + # Two responses for two calls + response = response + response + + # Wrap the values into proper Response objs + response = tuple( + evaluation_service.ListScheduledEvaluationRunsResponse.to_json(x) + for x in response ) + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values + + sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} + pager = client.list_scheduled_evaluation_runs(request=sample_request) -def test_create_scheduled_evaluation_run_rest_use_cached_wrapped_rpc(): + results = list(pager) + assert len(results) == 6 + assert all(isinstance(i, evaluation.ScheduledEvaluationRun) for i in results) + + pages = list( + client.list_scheduled_evaluation_runs(request=sample_request).pages + ) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token + + +def test_update_scheduled_evaluation_run_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -19475,7 +21206,7 @@ def test_create_scheduled_evaluation_run_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.create_scheduled_evaluation_run + client._transport.update_scheduled_evaluation_run in client._transport._wrapped_methods ) @@ -19485,29 +21216,28 @@ def test_create_scheduled_evaluation_run_rest_use_cached_wrapped_rpc(): "foo" # operation_request.operation in compute client(s) expect a string. ) client._transport._wrapped_methods[ - client._transport.create_scheduled_evaluation_run + client._transport.update_scheduled_evaluation_run ] = mock_rpc request = {} - client.create_scheduled_evaluation_run(request) + client.update_scheduled_evaluation_run(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.create_scheduled_evaluation_run(request) + client.update_scheduled_evaluation_run(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_create_scheduled_evaluation_run_rest_required_fields( - request_type=evaluation_service.CreateScheduledEvaluationRunRequest, +def test_update_scheduled_evaluation_run_rest_required_fields( + request_type=evaluation_service.UpdateScheduledEvaluationRunRequest, ): transport_class = transports.EvaluationServiceRestTransport request_init = {} - request_init["parent"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -19518,23 +21248,19 @@ def test_create_scheduled_evaluation_run_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).create_scheduled_evaluation_run._get_unset_required_fields(jsonified_request) + ).update_scheduled_evaluation_run._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present - jsonified_request["parent"] = "parent_value" - unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).create_scheduled_evaluation_run._get_unset_required_fields(jsonified_request) + ).update_scheduled_evaluation_run._get_unset_required_fields(jsonified_request) # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set(("scheduled_evaluation_run_id",)) + assert not set(unset_fields) - set(("update_mask",)) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), @@ -19555,7 +21281,7 @@ def test_create_scheduled_evaluation_run_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "post", + "method": "patch", "query_params": pb_request, } transcode_result["body"] = pb_request @@ -19572,33 +21298,27 @@ def test_create_scheduled_evaluation_run_rest_required_fields( req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.create_scheduled_evaluation_run(request) + response = client.update_scheduled_evaluation_run(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_create_scheduled_evaluation_run_rest_unset_required_fields(): +def test_update_scheduled_evaluation_run_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.create_scheduled_evaluation_run._get_unset_required_fields( + unset_fields = transport.update_scheduled_evaluation_run._get_unset_required_fields( {} ) assert set(unset_fields) == ( - set(("scheduledEvaluationRunId",)) - & set( - ( - "parent", - "scheduledEvaluationRun", - ) - ) + set(("updateMask",)) & set(("scheduledEvaluationRun",)) ) -def test_create_scheduled_evaluation_run_rest_flattened(): +def test_update_scheduled_evaluation_run_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -19610,15 +21330,18 @@ def test_create_scheduled_evaluation_run_rest_flattened(): return_value = evaluation.ScheduledEvaluationRun() # get arguments that satisfy an http rule for this method - sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} + sample_request = { + "scheduled_evaluation_run": { + "name": "projects/sample1/locations/sample2/apps/sample3/scheduledEvaluationRuns/sample4" + } + } # get truthy value for each flattened field mock_args = dict( - parent="parent_value", scheduled_evaluation_run=evaluation.ScheduledEvaluationRun( name="name_value" ), - scheduled_evaluation_run_id="scheduled_evaluation_run_id_value", + update_mask=field_mask_pb2.FieldMask(paths=["paths_value"]), ) mock_args.update(sample_request) @@ -19632,20 +21355,20 @@ def test_create_scheduled_evaluation_run_rest_flattened(): req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.create_scheduled_evaluation_run(**mock_args) + client.update_scheduled_evaluation_run(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1beta/{parent=projects/*/locations/*/apps/*}/scheduledEvaluationRuns" + "%s/v1beta/{scheduled_evaluation_run.name=projects/*/locations/*/apps/*/scheduledEvaluationRuns/*}" % client.transport._host, args[1], ) -def test_create_scheduled_evaluation_run_rest_flattened_error(transport: str = "rest"): +def test_update_scheduled_evaluation_run_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -19654,17 +21377,16 @@ def test_create_scheduled_evaluation_run_rest_flattened_error(transport: str = " # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.create_scheduled_evaluation_run( - evaluation_service.CreateScheduledEvaluationRunRequest(), - parent="parent_value", + client.update_scheduled_evaluation_run( + evaluation_service.UpdateScheduledEvaluationRunRequest(), scheduled_evaluation_run=evaluation.ScheduledEvaluationRun( name="name_value" ), - scheduled_evaluation_run_id="scheduled_evaluation_run_id_value", + update_mask=field_mask_pb2.FieldMask(paths=["paths_value"]), ) -def test_get_scheduled_evaluation_run_rest_use_cached_wrapped_rpc(): +def test_delete_scheduled_evaluation_run_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -19679,7 +21401,7 @@ def test_get_scheduled_evaluation_run_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.get_scheduled_evaluation_run + client._transport.delete_scheduled_evaluation_run in client._transport._wrapped_methods ) @@ -19689,24 +21411,24 @@ def test_get_scheduled_evaluation_run_rest_use_cached_wrapped_rpc(): "foo" # operation_request.operation in compute client(s) expect a string. ) client._transport._wrapped_methods[ - client._transport.get_scheduled_evaluation_run + client._transport.delete_scheduled_evaluation_run ] = mock_rpc request = {} - client.get_scheduled_evaluation_run(request) + client.delete_scheduled_evaluation_run(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.get_scheduled_evaluation_run(request) + client.delete_scheduled_evaluation_run(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_get_scheduled_evaluation_run_rest_required_fields( - request_type=evaluation_service.GetScheduledEvaluationRunRequest, +def test_delete_scheduled_evaluation_run_rest_required_fields( + request_type=evaluation_service.DeleteScheduledEvaluationRunRequest, ): transport_class = transports.EvaluationServiceRestTransport @@ -19722,7 +21444,7 @@ def test_get_scheduled_evaluation_run_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).get_scheduled_evaluation_run._get_unset_required_fields(jsonified_request) + ).delete_scheduled_evaluation_run._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present @@ -19731,7 +21453,9 @@ def test_get_scheduled_evaluation_run_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).get_scheduled_evaluation_run._get_unset_required_fields(jsonified_request) + ).delete_scheduled_evaluation_run._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set(("etag",)) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone @@ -19745,7 +21469,7 @@ def test_get_scheduled_evaluation_run_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = evaluation.ScheduledEvaluationRun() + return_value = None # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -19757,39 +21481,38 @@ def test_get_scheduled_evaluation_run_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "get", + "method": "delete", "query_params": pb_request, } transcode.return_value = transcode_result response_value = Response() response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = evaluation.ScheduledEvaluationRun.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) + json_return_value = "" response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_scheduled_evaluation_run(request) + response = client.delete_scheduled_evaluation_run(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_get_scheduled_evaluation_run_rest_unset_required_fields(): +def test_delete_scheduled_evaluation_run_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.get_scheduled_evaluation_run._get_unset_required_fields({}) - assert set(unset_fields) == (set(()) & set(("name",))) + unset_fields = transport.delete_scheduled_evaluation_run._get_unset_required_fields( + {} + ) + assert set(unset_fields) == (set(("etag",)) & set(("name",))) -def test_get_scheduled_evaluation_run_rest_flattened(): +def test_delete_scheduled_evaluation_run_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -19798,7 +21521,7 @@ def test_get_scheduled_evaluation_run_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation.ScheduledEvaluationRun() + return_value = None # get arguments that satisfy an http rule for this method sample_request = { @@ -19814,14 +21537,12 @@ def test_get_scheduled_evaluation_run_rest_flattened(): # Wrap the value into a proper Response obj response_value = Response() response_value.status_code = 200 - # Convert return value to protobuf type - return_value = evaluation.ScheduledEvaluationRun.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) + json_return_value = "" response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_scheduled_evaluation_run(**mock_args) + client.delete_scheduled_evaluation_run(**mock_args) # Establish that the underlying call was made with the expected # request object values. @@ -19834,7 +21555,7 @@ def test_get_scheduled_evaluation_run_rest_flattened(): ) -def test_get_scheduled_evaluation_run_rest_flattened_error(transport: str = "rest"): +def test_delete_scheduled_evaluation_run_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -19843,13 +21564,13 @@ def test_get_scheduled_evaluation_run_rest_flattened_error(transport: str = "res # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.get_scheduled_evaluation_run( - evaluation_service.GetScheduledEvaluationRunRequest(), + client.delete_scheduled_evaluation_run( + evaluation_service.DeleteScheduledEvaluationRunRequest(), name="name_value", ) -def test_list_scheduled_evaluation_runs_rest_use_cached_wrapped_rpc(): +def test_test_persona_voice_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -19864,8 +21585,7 @@ def test_list_scheduled_evaluation_runs_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.list_scheduled_evaluation_runs - in client._transport._wrapped_methods + client._transport.test_persona_voice in client._transport._wrapped_methods ) # Replace cached wrapped function with mock @@ -19873,30 +21593,32 @@ def test_list_scheduled_evaluation_runs_rest_use_cached_wrapped_rpc(): mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[ - client._transport.list_scheduled_evaluation_runs - ] = mock_rpc + client._transport._wrapped_methods[client._transport.test_persona_voice] = ( + mock_rpc + ) request = {} - client.list_scheduled_evaluation_runs(request) + client.test_persona_voice(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_scheduled_evaluation_runs(request) + client.test_persona_voice(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_list_scheduled_evaluation_runs_rest_required_fields( - request_type=evaluation_service.ListScheduledEvaluationRunsRequest, +def test_test_persona_voice_rest_required_fields( + request_type=evaluation_service.TestPersonaVoiceRequest, ): transport_class = transports.EvaluationServiceRestTransport request_init = {} - request_init["parent"] = "" + request_init["app"] = "" + request_init["persona_id"] = "" + request_init["text"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -19907,30 +21629,27 @@ def test_list_scheduled_evaluation_runs_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_scheduled_evaluation_runs._get_unset_required_fields(jsonified_request) + ).test_persona_voice._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present - jsonified_request["parent"] = "parent_value" + jsonified_request["app"] = "app_value" + jsonified_request["personaId"] = "persona_id_value" + jsonified_request["text"] = "text_value" unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_scheduled_evaluation_runs._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "filter", - "order_by", - "page_size", - "page_token", - ) - ) + ).test_persona_voice._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" + assert "app" in jsonified_request + assert jsonified_request["app"] == "app_value" + assert "personaId" in jsonified_request + assert jsonified_request["personaId"] == "persona_id_value" + assert "text" in jsonified_request + assert jsonified_request["text"] == "text_value" client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), @@ -19939,7 +21658,7 @@ def test_list_scheduled_evaluation_runs_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = evaluation_service.ListScheduledEvaluationRunsResponse() + return_value = evaluation_service.TestPersonaVoiceResponse() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -19951,53 +21670,49 @@ def test_list_scheduled_evaluation_runs_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "get", + "method": "post", "query_params": pb_request, } + transcode_result["body"] = pb_request transcode.return_value = transcode_result response_value = Response() response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation_service.ListScheduledEvaluationRunsResponse.pb( - return_value - ) + return_value = evaluation_service.TestPersonaVoiceResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_scheduled_evaluation_runs(request) + response = client.test_persona_voice(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_list_scheduled_evaluation_runs_rest_unset_required_fields(): +def test_test_persona_voice_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.list_scheduled_evaluation_runs._get_unset_required_fields( - {} - ) + unset_fields = transport.test_persona_voice._get_unset_required_fields({}) assert set(unset_fields) == ( - set( + set(()) + & set( ( - "filter", - "orderBy", - "pageSize", - "pageToken", + "app", + "personaId", + "text", ) ) - & set(("parent",)) ) -def test_list_scheduled_evaluation_runs_rest_flattened(): +def test_test_persona_voice_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -20006,14 +21721,14 @@ def test_list_scheduled_evaluation_runs_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation_service.ListScheduledEvaluationRunsResponse() + return_value = evaluation_service.TestPersonaVoiceResponse() # get arguments that satisfy an http rule for this method - sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} + sample_request = {"app": "projects/sample1/locations/sample2/apps/sample3"} # get truthy value for each flattened field mock_args = dict( - parent="parent_value", + app="app_value", ) mock_args.update(sample_request) @@ -20021,28 +21736,26 @@ def test_list_scheduled_evaluation_runs_rest_flattened(): response_value = Response() response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation_service.ListScheduledEvaluationRunsResponse.pb( - return_value - ) + return_value = evaluation_service.TestPersonaVoiceResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_scheduled_evaluation_runs(**mock_args) + client.test_persona_voice(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1beta/{parent=projects/*/locations/*/apps/*}/scheduledEvaluationRuns" + "%s/v1beta/{app=projects/*/locations/*/apps/*}:testPersonaVoice" % client.transport._host, args[1], ) -def test_list_scheduled_evaluation_runs_rest_flattened_error(transport: str = "rest"): +def test_test_persona_voice_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -20051,79 +21764,13 @@ def test_list_scheduled_evaluation_runs_rest_flattened_error(transport: str = "r # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.list_scheduled_evaluation_runs( - evaluation_service.ListScheduledEvaluationRunsRequest(), - parent="parent_value", - ) - - -def test_list_scheduled_evaluation_runs_rest_pager(transport: str = "rest"): - client = EvaluationServiceClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, - ) - - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # TODO(kbandes): remove this mock unless there's a good reason for it. - # with mock.patch.object(path_template, 'transcode') as transcode: - # Set the response as a series of pages - response = ( - evaluation_service.ListScheduledEvaluationRunsResponse( - scheduled_evaluation_runs=[ - evaluation.ScheduledEvaluationRun(), - evaluation.ScheduledEvaluationRun(), - evaluation.ScheduledEvaluationRun(), - ], - next_page_token="abc", - ), - evaluation_service.ListScheduledEvaluationRunsResponse( - scheduled_evaluation_runs=[], - next_page_token="def", - ), - evaluation_service.ListScheduledEvaluationRunsResponse( - scheduled_evaluation_runs=[ - evaluation.ScheduledEvaluationRun(), - ], - next_page_token="ghi", - ), - evaluation_service.ListScheduledEvaluationRunsResponse( - scheduled_evaluation_runs=[ - evaluation.ScheduledEvaluationRun(), - evaluation.ScheduledEvaluationRun(), - ], - ), - ) - # Two responses for two calls - response = response + response - - # Wrap the values into proper Response objs - response = tuple( - evaluation_service.ListScheduledEvaluationRunsResponse.to_json(x) - for x in response - ) - return_values = tuple(Response() for i in response) - for return_val, response_val in zip(return_values, response): - return_val._content = response_val.encode("UTF-8") - return_val.status_code = 200 - req.side_effect = return_values - - sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} - - pager = client.list_scheduled_evaluation_runs(request=sample_request) - - results = list(pager) - assert len(results) == 6 - assert all(isinstance(i, evaluation.ScheduledEvaluationRun) for i in results) - - pages = list( - client.list_scheduled_evaluation_runs(request=sample_request).pages + client.test_persona_voice( + evaluation_service.TestPersonaVoiceRequest(), + app="app_value", ) - for page_, token in zip(pages, ["abc", "def", "ghi", ""]): - assert page_.raw_page.next_page_token == token -def test_update_scheduled_evaluation_run_rest_use_cached_wrapped_rpc(): +def test_export_evaluations_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -20138,8 +21785,7 @@ def test_update_scheduled_evaluation_run_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.update_scheduled_evaluation_run - in client._transport._wrapped_methods + client._transport.export_evaluations in client._transport._wrapped_methods ) # Replace cached wrapped function with mock @@ -20147,29 +21793,35 @@ def test_update_scheduled_evaluation_run_rest_use_cached_wrapped_rpc(): mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[ - client._transport.update_scheduled_evaluation_run - ] = mock_rpc + client._transport._wrapped_methods[client._transport.export_evaluations] = ( + mock_rpc + ) request = {} - client.update_scheduled_evaluation_run(request) + client.export_evaluations(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.update_scheduled_evaluation_run(request) + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.export_evaluations(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_update_scheduled_evaluation_run_rest_required_fields( - request_type=evaluation_service.UpdateScheduledEvaluationRunRequest, +def test_export_evaluations_rest_required_fields( + request_type=evaluation_service.ExportEvaluationsRequest, ): transport_class = transports.EvaluationServiceRestTransport request_init = {} + request_init["parent"] = "" + request_init["names"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -20180,19 +21832,24 @@ def test_update_scheduled_evaluation_run_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).update_scheduled_evaluation_run._get_unset_required_fields(jsonified_request) + ).export_evaluations._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present + jsonified_request["parent"] = "parent_value" + jsonified_request["names"] = "names_value" + unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).update_scheduled_evaluation_run._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set(("update_mask",)) + ).export_evaluations._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + assert "names" in jsonified_request + assert jsonified_request["names"] == "names_value" client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), @@ -20201,7 +21858,7 @@ def test_update_scheduled_evaluation_run_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = evaluation.ScheduledEvaluationRun() + return_value = operations_pb2.Operation(name="operations/spam") # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -20213,7 +21870,7 @@ def test_update_scheduled_evaluation_run_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "patch", + "method": "post", "query_params": pb_request, } transcode_result["body"] = pb_request @@ -20221,36 +21878,37 @@ def test_update_scheduled_evaluation_run_rest_required_fields( response_value = Response() response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = evaluation.ScheduledEvaluationRun.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.update_scheduled_evaluation_run(request) + response = client.export_evaluations(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_update_scheduled_evaluation_run_rest_unset_required_fields(): +def test_export_evaluations_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.update_scheduled_evaluation_run._get_unset_required_fields( - {} - ) + unset_fields = transport.export_evaluations._get_unset_required_fields({}) assert set(unset_fields) == ( - set(("updateMask",)) & set(("scheduledEvaluationRun",)) + set(()) + & set( + ( + "parent", + "names", + ) + ) ) -def test_update_scheduled_evaluation_run_rest_flattened(): +def test_export_evaluations_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -20259,48 +21917,39 @@ def test_update_scheduled_evaluation_run_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation.ScheduledEvaluationRun() + return_value = operations_pb2.Operation(name="operations/spam") # get arguments that satisfy an http rule for this method - sample_request = { - "scheduled_evaluation_run": { - "name": "projects/sample1/locations/sample2/apps/sample3/scheduledEvaluationRuns/sample4" - } - } + sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} # get truthy value for each flattened field mock_args = dict( - scheduled_evaluation_run=evaluation.ScheduledEvaluationRun( - name="name_value" - ), - update_mask=field_mask_pb2.FieldMask(paths=["paths_value"]), + parent="parent_value", ) mock_args.update(sample_request) # Wrap the value into a proper Response obj response_value = Response() response_value.status_code = 200 - # Convert return value to protobuf type - return_value = evaluation.ScheduledEvaluationRun.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.update_scheduled_evaluation_run(**mock_args) + client.export_evaluations(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1beta/{scheduled_evaluation_run.name=projects/*/locations/*/apps/*/scheduledEvaluationRuns/*}" + "%s/v1beta/{parent=projects/*/locations/*/apps/*}/evaluations:export" % client.transport._host, args[1], ) -def test_update_scheduled_evaluation_run_rest_flattened_error(transport: str = "rest"): +def test_export_evaluations_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -20309,16 +21958,13 @@ def test_update_scheduled_evaluation_run_rest_flattened_error(transport: str = " # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.update_scheduled_evaluation_run( - evaluation_service.UpdateScheduledEvaluationRunRequest(), - scheduled_evaluation_run=evaluation.ScheduledEvaluationRun( - name="name_value" - ), - update_mask=field_mask_pb2.FieldMask(paths=["paths_value"]), + client.export_evaluations( + evaluation_service.ExportEvaluationsRequest(), + parent="parent_value", ) -def test_delete_scheduled_evaluation_run_rest_use_cached_wrapped_rpc(): +def test_export_evaluation_runs_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -20333,7 +21979,7 @@ def test_delete_scheduled_evaluation_run_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.delete_scheduled_evaluation_run + client._transport.export_evaluation_runs in client._transport._wrapped_methods ) @@ -20342,30 +21988,35 @@ def test_delete_scheduled_evaluation_run_rest_use_cached_wrapped_rpc(): mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[ - client._transport.delete_scheduled_evaluation_run - ] = mock_rpc + client._transport._wrapped_methods[client._transport.export_evaluation_runs] = ( + mock_rpc + ) request = {} - client.delete_scheduled_evaluation_run(request) + client.export_evaluation_runs(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.delete_scheduled_evaluation_run(request) + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.export_evaluation_runs(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_delete_scheduled_evaluation_run_rest_required_fields( - request_type=evaluation_service.DeleteScheduledEvaluationRunRequest, +def test_export_evaluation_runs_rest_required_fields( + request_type=evaluation_service.ExportEvaluationRunsRequest, ): transport_class = transports.EvaluationServiceRestTransport request_init = {} - request_init["name"] = "" + request_init["parent"] = "" + request_init["names"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -20376,23 +22027,24 @@ def test_delete_scheduled_evaluation_run_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).delete_scheduled_evaluation_run._get_unset_required_fields(jsonified_request) + ).export_evaluation_runs._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present - jsonified_request["name"] = "name_value" + jsonified_request["parent"] = "parent_value" + jsonified_request["names"] = "names_value" unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).delete_scheduled_evaluation_run._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set(("etag",)) + ).export_evaluation_runs._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone - assert "name" in jsonified_request - assert jsonified_request["name"] == "name_value" + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + assert "names" in jsonified_request + assert jsonified_request["names"] == "names_value" client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), @@ -20401,7 +22053,7 @@ def test_delete_scheduled_evaluation_run_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = None + return_value = operations_pb2.Operation(name="operations/spam") # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -20413,38 +22065,45 @@ def test_delete_scheduled_evaluation_run_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "delete", + "method": "post", "query_params": pb_request, } + transcode_result["body"] = pb_request transcode.return_value = transcode_result response_value = Response() response_value.status_code = 200 - json_return_value = "" + json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.delete_scheduled_evaluation_run(request) + response = client.export_evaluation_runs(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_delete_scheduled_evaluation_run_rest_unset_required_fields(): +def test_export_evaluation_runs_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.delete_scheduled_evaluation_run._get_unset_required_fields( - {} + unset_fields = transport.export_evaluation_runs._get_unset_required_fields({}) + assert set(unset_fields) == ( + set(()) + & set( + ( + "parent", + "names", + ) + ) ) - assert set(unset_fields) == (set(("etag",)) & set(("name",))) -def test_delete_scheduled_evaluation_run_rest_flattened(): +def test_export_evaluation_runs_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -20453,41 +22112,40 @@ def test_delete_scheduled_evaluation_run_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = None + return_value = operations_pb2.Operation(name="operations/spam") # get arguments that satisfy an http rule for this method - sample_request = { - "name": "projects/sample1/locations/sample2/apps/sample3/scheduledEvaluationRuns/sample4" - } + sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} # get truthy value for each flattened field mock_args = dict( - name="name_value", + parent="parent_value", + names=["names_value"], ) mock_args.update(sample_request) # Wrap the value into a proper Response obj response_value = Response() response_value.status_code = 200 - json_return_value = "" + json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.delete_scheduled_evaluation_run(**mock_args) + client.export_evaluation_runs(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1beta/{name=projects/*/locations/*/apps/*/scheduledEvaluationRuns/*}" + "%s/v1beta/{parent=projects/*/locations/*/apps/*}/evaluationRuns:export" % client.transport._host, args[1], ) -def test_delete_scheduled_evaluation_run_rest_flattened_error(transport: str = "rest"): +def test_export_evaluation_runs_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -20496,13 +22154,14 @@ def test_delete_scheduled_evaluation_run_rest_flattened_error(transport: str = " # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.delete_scheduled_evaluation_run( - evaluation_service.DeleteScheduledEvaluationRunRequest(), - name="name_value", + client.export_evaluation_runs( + evaluation_service.ExportEvaluationRunsRequest(), + parent="parent_value", + names=["names_value"], ) -def test_test_persona_voice_rest_use_cached_wrapped_rpc(): +def test_export_evaluation_results_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -20517,7 +22176,8 @@ def test_test_persona_voice_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.test_persona_voice in client._transport._wrapped_methods + client._transport.export_evaluation_results + in client._transport._wrapped_methods ) # Replace cached wrapped function with mock @@ -20525,32 +22185,35 @@ def test_test_persona_voice_rest_use_cached_wrapped_rpc(): mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.test_persona_voice] = ( - mock_rpc - ) + client._transport._wrapped_methods[ + client._transport.export_evaluation_results + ] = mock_rpc request = {} - client.test_persona_voice(request) + client.export_evaluation_results(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.test_persona_voice(request) + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.export_evaluation_results(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_test_persona_voice_rest_required_fields( - request_type=evaluation_service.TestPersonaVoiceRequest, +def test_export_evaluation_results_rest_required_fields( + request_type=evaluation_service.ExportEvaluationResultsRequest, ): transport_class = transports.EvaluationServiceRestTransport request_init = {} - request_init["app"] = "" - request_init["persona_id"] = "" - request_init["text"] = "" + request_init["parent"] = "" + request_init["names"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -20561,27 +22224,24 @@ def test_test_persona_voice_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).test_persona_voice._get_unset_required_fields(jsonified_request) + ).export_evaluation_results._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present - jsonified_request["app"] = "app_value" - jsonified_request["personaId"] = "persona_id_value" - jsonified_request["text"] = "text_value" + jsonified_request["parent"] = "parent_value" + jsonified_request["names"] = "names_value" unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).test_persona_voice._get_unset_required_fields(jsonified_request) + ).export_evaluation_results._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone - assert "app" in jsonified_request - assert jsonified_request["app"] == "app_value" - assert "personaId" in jsonified_request - assert jsonified_request["personaId"] == "persona_id_value" - assert "text" in jsonified_request - assert jsonified_request["text"] == "text_value" + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + assert "names" in jsonified_request + assert jsonified_request["names"] == "names_value" client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), @@ -20590,7 +22250,7 @@ def test_test_persona_voice_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = evaluation_service.TestPersonaVoiceResponse() + return_value = operations_pb2.Operation(name="operations/spam") # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -20610,41 +22270,37 @@ def test_test_persona_voice_rest_required_fields( response_value = Response() response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = evaluation_service.TestPersonaVoiceResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.test_persona_voice(request) + response = client.export_evaluation_results(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_test_persona_voice_rest_unset_required_fields(): +def test_export_evaluation_results_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.test_persona_voice._get_unset_required_fields({}) + unset_fields = transport.export_evaluation_results._get_unset_required_fields({}) assert set(unset_fields) == ( set(()) & set( ( - "app", - "personaId", - "text", + "parent", + "names", ) ) ) -def test_test_persona_voice_rest_flattened(): +def test_export_evaluation_results_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -20653,41 +22309,42 @@ def test_test_persona_voice_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation_service.TestPersonaVoiceResponse() + return_value = operations_pb2.Operation(name="operations/spam") # get arguments that satisfy an http rule for this method - sample_request = {"app": "projects/sample1/locations/sample2/apps/sample3"} + sample_request = { + "parent": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4" + } # get truthy value for each flattened field mock_args = dict( - app="app_value", + parent="parent_value", + names=["names_value"], ) mock_args.update(sample_request) # Wrap the value into a proper Response obj response_value = Response() response_value.status_code = 200 - # Convert return value to protobuf type - return_value = evaluation_service.TestPersonaVoiceResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.test_persona_voice(**mock_args) + client.export_evaluation_results(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1beta/{app=projects/*/locations/*/apps/*}:testPersonaVoice" + "%s/v1beta/{parent=projects/*/locations/*/apps/*/evaluations/*}/results:export" % client.transport._host, args[1], ) -def test_test_persona_voice_rest_flattened_error(transport: str = "rest"): +def test_export_evaluation_results_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -20696,13 +22353,14 @@ def test_test_persona_voice_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.test_persona_voice( - evaluation_service.TestPersonaVoiceRequest(), - app="app_value", + client.export_evaluation_results( + evaluation_service.ExportEvaluationResultsRequest(), + parent="parent_value", + names=["names_value"], ) -def test_export_evaluations_rest_use_cached_wrapped_rpc(): +def test_run_evaluation_result_metrics_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -20717,7 +22375,8 @@ def test_export_evaluations_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.export_evaluations in client._transport._wrapped_methods + client._transport.run_evaluation_result_metrics + in client._transport._wrapped_methods ) # Replace cached wrapped function with mock @@ -20725,12 +22384,12 @@ def test_export_evaluations_rest_use_cached_wrapped_rpc(): mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.export_evaluations] = ( - mock_rpc - ) + client._transport._wrapped_methods[ + client._transport.run_evaluation_result_metrics + ] = mock_rpc request = {} - client.export_evaluations(request) + client.run_evaluation_result_metrics(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 @@ -20739,21 +22398,20 @@ def test_export_evaluations_rest_use_cached_wrapped_rpc(): # subsequent calls should use the cached wrapper wrapper_fn.reset_mock() - client.export_evaluations(request) + client.run_evaluation_result_metrics(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_export_evaluations_rest_required_fields( - request_type=evaluation_service.ExportEvaluationsRequest, +def test_run_evaluation_result_metrics_rest_required_fields( + request_type=evaluation_service.RunEvaluationResultMetricsRequest, ): transport_class = transports.EvaluationServiceRestTransport request_init = {} - request_init["parent"] = "" - request_init["names"] = "" + request_init["evaluation_result_id"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -20764,24 +22422,21 @@ def test_export_evaluations_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).export_evaluations._get_unset_required_fields(jsonified_request) + ).run_evaluation_result_metrics._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present - jsonified_request["parent"] = "parent_value" - jsonified_request["names"] = "names_value" + jsonified_request["evaluationResultId"] = "evaluation_result_id_value" unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).export_evaluations._get_unset_required_fields(jsonified_request) + ).run_evaluation_result_metrics._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" - assert "names" in jsonified_request - assert jsonified_request["names"] == "names_value" + assert "evaluationResultId" in jsonified_request + assert jsonified_request["evaluationResultId"] == "evaluation_result_id_value" client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), @@ -20816,31 +22471,25 @@ def test_export_evaluations_rest_required_fields( req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.export_evaluations(request) + response = client.run_evaluation_result_metrics(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_export_evaluations_rest_unset_required_fields(): +def test_run_evaluation_result_metrics_rest_unset_required_fields(): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.export_evaluations._get_unset_required_fields({}) - assert set(unset_fields) == ( - set(()) - & set( - ( - "parent", - "names", - ) - ) + unset_fields = transport.run_evaluation_result_metrics._get_unset_required_fields( + {} ) + assert set(unset_fields) == (set(()) & set(("evaluationResultId",))) -def test_export_evaluations_rest_flattened(): +def test_run_evaluation_result_metrics_rest_flattened(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -20852,11 +22501,13 @@ def test_export_evaluations_rest_flattened(): return_value = operations_pb2.Operation(name="operations/spam") # get arguments that satisfy an http rule for this method - sample_request = {"parent": "projects/sample1/locations/sample2/apps/sample3"} + sample_request = { + "evaluation_result_id": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4/results/sample5" + } # get truthy value for each flattened field mock_args = dict( - parent="parent_value", + evaluation_result_id="evaluation_result_id_value", ) mock_args.update(sample_request) @@ -20868,20 +22519,20 @@ def test_export_evaluations_rest_flattened(): req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.export_evaluations(**mock_args) + client.run_evaluation_result_metrics(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1beta/{parent=projects/*/locations/*/apps/*}/evaluations:export" + "%s/v1beta/{evaluation_result_id=projects/*/locations/*/apps/*/evaluations/*/results/*}:runEvaluationResultMetrics" % client.transport._host, args[1], ) -def test_export_evaluations_rest_flattened_error(transport: str = "rest"): +def test_run_evaluation_result_metrics_rest_flattened_error(transport: str = "rest"): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -20890,9 +22541,9 @@ def test_export_evaluations_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.export_evaluations( - evaluation_service.ExportEvaluationsRequest(), - parent="parent_value", + client.run_evaluation_result_metrics( + evaluation_service.RunEvaluationResultMetricsRequest(), + evaluation_result_id="evaluation_result_id_value", ) @@ -21700,6 +23351,72 @@ def test_export_evaluations_empty_call_grpc(): assert args[0] == request_msg +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_export_evaluation_runs_empty_call_grpc(): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.export_evaluation_runs), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.export_evaluation_runs(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = evaluation_service.ExportEvaluationRunsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_export_evaluation_results_empty_call_grpc(): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.export_evaluation_results), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.export_evaluation_results(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = evaluation_service.ExportEvaluationResultsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_run_evaluation_result_metrics_empty_call_grpc(): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.run_evaluation_result_metrics), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.run_evaluation_result_metrics(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = evaluation_service.RunEvaluationResultMetricsRequest() + assert args[0] == request_msg + + def test_transport_kind_grpc_asyncio(): transport = EvaluationServiceAsyncClient.get_transport_class("grpc_asyncio")( credentials=async_anonymous_credentials() @@ -22116,7 +23833,7 @@ async def test_get_evaluation_result_empty_call_grpc_asyncio(): app_version="app_version_value", app_version_display_name="app_version_display_name_value", changelog="changelog_value", - execution_state=evaluation.EvaluationResult.ExecutionState.RUNNING, + execution_state=evaluation.EvaluationResult.ExecutionState.QUEUED, golden_run_method=golden_run.GoldenRunMethod.STABLE, ) ) @@ -22188,10 +23905,11 @@ async def test_get_evaluation_run_empty_call_grpc_asyncio(): evaluations=["evaluations_value"], evaluation_dataset="evaluation_dataset_value", evaluation_type=evaluation.EvaluationRun.EvaluationType.GOLDEN, - state=evaluation.EvaluationRun.EvaluationRunState.RUNNING, + state=evaluation.EvaluationRun.EvaluationRunState.QUEUED, run_count=989, scheduled_evaluation_run="scheduled_evaluation_run_value", golden_run_method=golden_run.GoldenRunMethod.STABLE, + operation="operation_value", ) ) await client.get_evaluation_run(request=None) @@ -22526,14 +24244,102 @@ async def test_get_scheduled_evaluation_run_empty_call_grpc_asyncio(): # Establish that the underlying stub method was called. call.assert_called() _, args, _ = call.mock_calls[0] - request_msg = evaluation_service.GetScheduledEvaluationRunRequest() + request_msg = evaluation_service.GetScheduledEvaluationRunRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_scheduled_evaluation_runs_empty_call_grpc_asyncio(): + client = EvaluationServiceAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_scheduled_evaluation_runs), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + evaluation_service.ListScheduledEvaluationRunsResponse( + next_page_token="next_page_token_value", + ) + ) + await client.list_scheduled_evaluation_runs(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = evaluation_service.ListScheduledEvaluationRunsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_update_scheduled_evaluation_run_empty_call_grpc_asyncio(): + client = EvaluationServiceAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.update_scheduled_evaluation_run), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + evaluation.ScheduledEvaluationRun( + name="name_value", + display_name="display_name_value", + description="description_value", + active=True, + last_completed_run="last_completed_run_value", + total_executions=1738, + created_by="created_by_value", + last_updated_by="last_updated_by_value", + etag="etag_value", + ) + ) + await client.update_scheduled_evaluation_run(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = evaluation_service.UpdateScheduledEvaluationRunRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_delete_scheduled_evaluation_run_empty_call_grpc_asyncio(): + client = EvaluationServiceAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.delete_scheduled_evaluation_run), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall(None) + await client.delete_scheduled_evaluation_run(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = evaluation_service.DeleteScheduledEvaluationRunRequest() assert args[0] == request_msg # This test is a coverage failsafe to make sure that totally empty calls, # i.e. request == None and no flattened fields passed, work. @pytest.mark.asyncio -async def test_list_scheduled_evaluation_runs_empty_call_grpc_asyncio(): +async def test_test_persona_voice_empty_call_grpc_asyncio(): client = EvaluationServiceAsyncClient( credentials=async_anonymous_credentials(), transport="grpc_asyncio", @@ -22541,27 +24347,27 @@ async def test_list_scheduled_evaluation_runs_empty_call_grpc_asyncio(): # Mock the actual call, and fake the request. with mock.patch.object( - type(client.transport.list_scheduled_evaluation_runs), "__call__" + type(client.transport.test_persona_voice), "__call__" ) as call: # Designate an appropriate return value for the call. call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - evaluation_service.ListScheduledEvaluationRunsResponse( - next_page_token="next_page_token_value", + evaluation_service.TestPersonaVoiceResponse( + audio=b"audio_blob", ) ) - await client.list_scheduled_evaluation_runs(request=None) + await client.test_persona_voice(request=None) # Establish that the underlying stub method was called. call.assert_called() _, args, _ = call.mock_calls[0] - request_msg = evaluation_service.ListScheduledEvaluationRunsRequest() + request_msg = evaluation_service.TestPersonaVoiceRequest() assert args[0] == request_msg # This test is a coverage failsafe to make sure that totally empty calls, # i.e. request == None and no flattened fields passed, work. @pytest.mark.asyncio -async def test_update_scheduled_evaluation_run_empty_call_grpc_asyncio(): +async def test_export_evaluations_empty_call_grpc_asyncio(): client = EvaluationServiceAsyncClient( credentials=async_anonymous_credentials(), transport="grpc_asyncio", @@ -22569,35 +24375,25 @@ async def test_update_scheduled_evaluation_run_empty_call_grpc_asyncio(): # Mock the actual call, and fake the request. with mock.patch.object( - type(client.transport.update_scheduled_evaluation_run), "__call__" + type(client.transport.export_evaluations), "__call__" ) as call: # Designate an appropriate return value for the call. call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - evaluation.ScheduledEvaluationRun( - name="name_value", - display_name="display_name_value", - description="description_value", - active=True, - last_completed_run="last_completed_run_value", - total_executions=1738, - created_by="created_by_value", - last_updated_by="last_updated_by_value", - etag="etag_value", - ) + operations_pb2.Operation(name="operations/spam") ) - await client.update_scheduled_evaluation_run(request=None) + await client.export_evaluations(request=None) # Establish that the underlying stub method was called. call.assert_called() _, args, _ = call.mock_calls[0] - request_msg = evaluation_service.UpdateScheduledEvaluationRunRequest() + request_msg = evaluation_service.ExportEvaluationsRequest() assert args[0] == request_msg # This test is a coverage failsafe to make sure that totally empty calls, # i.e. request == None and no flattened fields passed, work. @pytest.mark.asyncio -async def test_delete_scheduled_evaluation_run_empty_call_grpc_asyncio(): +async def test_export_evaluation_runs_empty_call_grpc_asyncio(): client = EvaluationServiceAsyncClient( credentials=async_anonymous_credentials(), transport="grpc_asyncio", @@ -22605,23 +24401,25 @@ async def test_delete_scheduled_evaluation_run_empty_call_grpc_asyncio(): # Mock the actual call, and fake the request. with mock.patch.object( - type(client.transport.delete_scheduled_evaluation_run), "__call__" + type(client.transport.export_evaluation_runs), "__call__" ) as call: # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall(None) - await client.delete_scheduled_evaluation_run(request=None) + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.export_evaluation_runs(request=None) # Establish that the underlying stub method was called. call.assert_called() _, args, _ = call.mock_calls[0] - request_msg = evaluation_service.DeleteScheduledEvaluationRunRequest() + request_msg = evaluation_service.ExportEvaluationRunsRequest() assert args[0] == request_msg # This test is a coverage failsafe to make sure that totally empty calls, # i.e. request == None and no flattened fields passed, work. @pytest.mark.asyncio -async def test_test_persona_voice_empty_call_grpc_asyncio(): +async def test_export_evaluation_results_empty_call_grpc_asyncio(): client = EvaluationServiceAsyncClient( credentials=async_anonymous_credentials(), transport="grpc_asyncio", @@ -22629,27 +24427,25 @@ async def test_test_persona_voice_empty_call_grpc_asyncio(): # Mock the actual call, and fake the request. with mock.patch.object( - type(client.transport.test_persona_voice), "__call__" + type(client.transport.export_evaluation_results), "__call__" ) as call: # Designate an appropriate return value for the call. call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - evaluation_service.TestPersonaVoiceResponse( - audio=b"audio_blob", - ) + operations_pb2.Operation(name="operations/spam") ) - await client.test_persona_voice(request=None) + await client.export_evaluation_results(request=None) # Establish that the underlying stub method was called. call.assert_called() _, args, _ = call.mock_calls[0] - request_msg = evaluation_service.TestPersonaVoiceRequest() + request_msg = evaluation_service.ExportEvaluationResultsRequest() assert args[0] == request_msg # This test is a coverage failsafe to make sure that totally empty calls, # i.e. request == None and no flattened fields passed, work. @pytest.mark.asyncio -async def test_export_evaluations_empty_call_grpc_asyncio(): +async def test_run_evaluation_result_metrics_empty_call_grpc_asyncio(): client = EvaluationServiceAsyncClient( credentials=async_anonymous_credentials(), transport="grpc_asyncio", @@ -22657,18 +24453,18 @@ async def test_export_evaluations_empty_call_grpc_asyncio(): # Mock the actual call, and fake the request. with mock.patch.object( - type(client.transport.export_evaluations), "__call__" + type(client.transport.run_evaluation_result_metrics), "__call__" ) as call: # Designate an appropriate return value for the call. call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( operations_pb2.Operation(name="operations/spam") ) - await client.export_evaluations(request=None) + await client.run_evaluation_result_metrics(request=None) # Establish that the underlying stub method was called. call.assert_called() _, args, _ = call.mock_calls[0] - request_msg = evaluation_service.ExportEvaluationsRequest() + request_msg = evaluation_service.RunEvaluationResultMetricsRequest() assert args[0] == request_msg @@ -23055,7 +24851,19 @@ def test_create_evaluation_rest_call_success(request_type): "agent_transfer": {}, "updated_variables": {}, "mock_tool_response": {}, + "no_tool_calls": True, "note": "note_value", + "skip_evaluation": True, + "expectation_level_metrics_thresholds_override": { + "tool_invocation_parameter_correctness_threshold": 0.5037 + }, + "agent_response_semantic_similarity_metrics_config_override": { + "enable_semantic_similarity_metrics": True + }, + "agent_response_hallucination_metrics_config_override": { + "enable_hallucination_metrics": True + }, + "comparison_type": 1, }, } ], @@ -23067,6 +24875,12 @@ def test_create_evaluation_rest_call_success(request_type): "attributes": {}, "child_spans": {}, }, + "turn_level_metrics_thresholds_override": { + "semantic_similarity_success_threshold": 3966, + "overall_tool_invocation_correctness_threshold": 0.4833, + "semantic_similarity_channel": 1, + }, + "hallucination_metric_behavior_override": 1, } ], "evaluation_expectations": [ @@ -23095,6 +24909,7 @@ def test_create_evaluation_rest_call_success(request_type): "evaluation_expectations_value1", "evaluation_expectations_value2", ], + "scenario_execution_mode": 1, }, "name": "name_value", "display_name": "display_name_value", @@ -23149,6 +24964,7 @@ def test_create_evaluation_rest_call_success(request_type): "observed_tool_response": {}, "observed_agent_response": {}, "observed_agent_transfer": {}, + "observed_payload": {}, "expectation": {}, "outcome": 1, "semantic_similarity_result": { @@ -23190,6 +25006,7 @@ def test_create_evaluation_rest_call_success(request_type): "error_type": 1, "error_message": "error_message_value", "session_id": "session_id_value", + "user_facing_error_message": "user_facing_error_message_value", }, "span_latencies": [ { @@ -23283,17 +25100,11 @@ def test_create_evaluation_rest_call_success(request_type): "app_version_display_name": "app_version_display_name_value", "changelog": "changelog_value", "changelog_create_time": {}, - "execution_state": 1, + "execution_state": 5, "evaluation_metrics_thresholds": { "golden_evaluation_metrics_thresholds": { - "turn_level_metrics_thresholds": { - "semantic_similarity_success_threshold": 3966, - "overall_tool_invocation_correctness_threshold": 0.4833, - "semantic_similarity_channel": 1, - }, - "expectation_level_metrics_thresholds": { - "tool_invocation_parameter_correctness_threshold": 0.5037 - }, + "turn_level_metrics_thresholds": {}, + "expectation_level_metrics_thresholds": {}, "tool_matching_settings": {"extra_tool_call_behavior": 1}, }, "hallucination_metric_behavior": 1, @@ -23314,6 +25125,22 @@ def test_create_evaluation_rest_call_success(request_type): }, "invalid": True, "last_ten_results": {}, + "evaluation_metrics_threshold_override": {}, + "evaluation_metrics_config_override": { + "golden_metrics_config": { + "semantic_similarity_metrics_config": {}, + "tool_correctness_metrics_config": { + "enable_tool_correctness_metrics": True + }, + "step_tool_correctness_metrics_config": {}, + }, + "scenario_metrics_config": { + "user_goal_met_metrics_config": {"enable_user_goal_met_metrics": True}, + "expectations_met_metrics_config": { + "enable_expectations_met_metrics": True + }, + }, + }, } # The version of a generated dependency at test runtime may differ from the version used during generation. # Delete any fields which are not present in the current runtime dependency @@ -24119,7 +25946,19 @@ def test_update_evaluation_rest_call_success(request_type): "agent_transfer": {}, "updated_variables": {}, "mock_tool_response": {}, + "no_tool_calls": True, "note": "note_value", + "skip_evaluation": True, + "expectation_level_metrics_thresholds_override": { + "tool_invocation_parameter_correctness_threshold": 0.5037 + }, + "agent_response_semantic_similarity_metrics_config_override": { + "enable_semantic_similarity_metrics": True + }, + "agent_response_hallucination_metrics_config_override": { + "enable_hallucination_metrics": True + }, + "comparison_type": 1, }, } ], @@ -24131,6 +25970,12 @@ def test_update_evaluation_rest_call_success(request_type): "attributes": {}, "child_spans": {}, }, + "turn_level_metrics_thresholds_override": { + "semantic_similarity_success_threshold": 3966, + "overall_tool_invocation_correctness_threshold": 0.4833, + "semantic_similarity_channel": 1, + }, + "hallucination_metric_behavior_override": 1, } ], "evaluation_expectations": [ @@ -24159,6 +26004,7 @@ def test_update_evaluation_rest_call_success(request_type): "evaluation_expectations_value1", "evaluation_expectations_value2", ], + "scenario_execution_mode": 1, }, "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4", "display_name": "display_name_value", @@ -24213,6 +26059,7 @@ def test_update_evaluation_rest_call_success(request_type): "observed_tool_response": {}, "observed_agent_response": {}, "observed_agent_transfer": {}, + "observed_payload": {}, "expectation": {}, "outcome": 1, "semantic_similarity_result": { @@ -24254,6 +26101,7 @@ def test_update_evaluation_rest_call_success(request_type): "error_type": 1, "error_message": "error_message_value", "session_id": "session_id_value", + "user_facing_error_message": "user_facing_error_message_value", }, "span_latencies": [ { @@ -24347,17 +26195,11 @@ def test_update_evaluation_rest_call_success(request_type): "app_version_display_name": "app_version_display_name_value", "changelog": "changelog_value", "changelog_create_time": {}, - "execution_state": 1, + "execution_state": 5, "evaluation_metrics_thresholds": { "golden_evaluation_metrics_thresholds": { - "turn_level_metrics_thresholds": { - "semantic_similarity_success_threshold": 3966, - "overall_tool_invocation_correctness_threshold": 0.4833, - "semantic_similarity_channel": 1, - }, - "expectation_level_metrics_thresholds": { - "tool_invocation_parameter_correctness_threshold": 0.5037 - }, + "turn_level_metrics_thresholds": {}, + "expectation_level_metrics_thresholds": {}, "tool_matching_settings": {"extra_tool_call_behavior": 1}, }, "hallucination_metric_behavior": 1, @@ -24376,15 +26218,298 @@ def test_update_evaluation_rest_call_success(request_type): }, "golden_run_method": 1, }, - "invalid": True, - "last_ten_results": {}, + "invalid": True, + "last_ten_results": {}, + "evaluation_metrics_threshold_override": {}, + "evaluation_metrics_config_override": { + "golden_metrics_config": { + "semantic_similarity_metrics_config": {}, + "tool_correctness_metrics_config": { + "enable_tool_correctness_metrics": True + }, + "step_tool_correctness_metrics_config": {}, + }, + "scenario_metrics_config": { + "user_goal_met_metrics_config": {"enable_user_goal_met_metrics": True}, + "expectations_met_metrics_config": { + "enable_expectations_met_metrics": True + }, + }, + }, + } + # The version of a generated dependency at test runtime may differ from the version used during generation. + # Delete any fields which are not present in the current runtime dependency + # See https://github.com/googleapis/gapic-generator-python/issues/1748 + + # Determine if the message type is proto-plus or protobuf + test_field = evaluation_service.UpdateEvaluationRequest.meta.fields["evaluation"] + + def get_message_fields(field): + # Given a field which is a message (composite type), return a list with + # all the fields of the message. + # If the field is not a composite type, return an empty list. + message_fields = [] + + if hasattr(field, "message") and field.message: + is_field_type_proto_plus_type = not hasattr(field.message, "DESCRIPTOR") + + if is_field_type_proto_plus_type: + message_fields = field.message.meta.fields.values() + # Add `# pragma: NO COVER` because there may not be any `*_pb2` field types + else: # pragma: NO COVER + message_fields = field.message.DESCRIPTOR.fields + return message_fields + + runtime_nested_fields = [ + (field.name, nested_field.name) + for field in get_message_fields(test_field) + for nested_field in get_message_fields(field) + ] + + subfields_not_in_runtime = [] + + # For each item in the sample request, create a list of sub fields which are not present at runtime + # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime + for field, value in request_init["evaluation"].items(): # pragma: NO COVER + result = None + is_repeated = False + # For repeated fields + if isinstance(value, list) and len(value): + is_repeated = True + result = value[0] + # For fields where the type is another message + if isinstance(value, dict): + result = value + + if result and hasattr(result, "keys"): + for subfield in result.keys(): + if (field, subfield) not in runtime_nested_fields: + subfields_not_in_runtime.append( + { + "field": field, + "subfield": subfield, + "is_repeated": is_repeated, + } + ) + + # Remove fields from the sample request which are not present in the runtime version of the dependency + # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime + for subfield_to_delete in subfields_not_in_runtime: # pragma: NO COVER + field = subfield_to_delete.get("field") + field_repeated = subfield_to_delete.get("is_repeated") + subfield = subfield_to_delete.get("subfield") + if subfield: + if field_repeated: + for i in range(0, len(request_init["evaluation"][field])): + del request_init["evaluation"][field][i][subfield] + else: + del request_init["evaluation"][field][subfield] + request = request_type(**request_init) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = gcc_evaluation.Evaluation( + name="name_value", + display_name="display_name_value", + description="description_value", + tags=["tags_value"], + evaluation_datasets=["evaluation_datasets_value"], + created_by="created_by_value", + last_updated_by="last_updated_by_value", + evaluation_runs=["evaluation_runs_value"], + etag="etag_value", + invalid=True, + ) + + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = gcc_evaluation.Evaluation.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.update_evaluation(request) + + # Establish that the response is the type that we expect. + assert isinstance(response, gcc_evaluation.Evaluation) + assert response.name == "name_value" + assert response.display_name == "display_name_value" + assert response.description == "description_value" + assert response.tags == ["tags_value"] + assert response.evaluation_datasets == ["evaluation_datasets_value"] + assert response.created_by == "created_by_value" + assert response.last_updated_by == "last_updated_by_value" + assert response.evaluation_runs == ["evaluation_runs_value"] + assert response.etag == "etag_value" + assert response.invalid is True + + +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_update_evaluation_rest_interceptors(null_interceptor): + transport = transports.EvaluationServiceRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.EvaluationServiceRestInterceptor(), + ) + client = EvaluationServiceClient(transport=transport) + + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object( + transports.EvaluationServiceRestInterceptor, "post_update_evaluation" + ) as post, + mock.patch.object( + transports.EvaluationServiceRestInterceptor, + "post_update_evaluation_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.EvaluationServiceRestInterceptor, "pre_update_evaluation" + ) as pre, + ): + pre.assert_not_called() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = evaluation_service.UpdateEvaluationRequest.pb( + evaluation_service.UpdateEvaluationRequest() + ) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } + + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = gcc_evaluation.Evaluation.to_json(gcc_evaluation.Evaluation()) + req.return_value.content = return_value + + request = evaluation_service.UpdateEvaluationRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + post.return_value = gcc_evaluation.Evaluation() + post_with_metadata.return_value = gcc_evaluation.Evaluation(), metadata + + client.update_evaluation( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + + pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() + + +def test_update_evaluation_dataset_rest_bad_request( + request_type=evaluation_service.UpdateEvaluationDatasetRequest, +): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = { + "evaluation_dataset": { + "name": "projects/sample1/locations/sample2/apps/sample3/evaluationDatasets/sample4" + } + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.update_evaluation_dataset(request) + + +@pytest.mark.parametrize( + "request_type", + [ + evaluation_service.UpdateEvaluationDatasetRequest, + dict, + ], +) +def test_update_evaluation_dataset_rest_call_success(request_type): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + # send a request that will satisfy transcoding + request_init = { + "evaluation_dataset": { + "name": "projects/sample1/locations/sample2/apps/sample3/evaluationDatasets/sample4" + } + } + request_init["evaluation_dataset"] = { + "name": "projects/sample1/locations/sample2/apps/sample3/evaluationDatasets/sample4", + "display_name": "display_name_value", + "evaluations": ["evaluations_value1", "evaluations_value2"], + "create_time": {"seconds": 751, "nanos": 543}, + "update_time": {}, + "etag": "etag_value", + "created_by": "created_by_value", + "last_updated_by": "last_updated_by_value", + "aggregated_metrics": { + "metrics_by_app_version": [ + { + "app_version_id": "app_version_id_value", + "tool_metrics": [ + {"tool": "tool_value", "pass_count": 1087, "fail_count": 1060} + ], + "semantic_similarity_metrics": [{"score": 0.54}], + "hallucination_metrics": [{"score": 0.54}], + "tool_call_latency_metrics": [ + { + "tool": "tool_value", + "average_latency": {"seconds": 751, "nanos": 543}, + } + ], + "turn_latency_metrics": [{"average_latency": {}}], + "pass_count": 1087, + "fail_count": 1060, + "metrics_by_turn": [ + { + "turn_index": 1088, + "tool_metrics": {}, + "semantic_similarity_metrics": {}, + "hallucination_metrics": {}, + "tool_call_latency_metrics": {}, + "turn_latency_metrics": {}, + } + ], + } + ] + }, } # The version of a generated dependency at test runtime may differ from the version used during generation. # Delete any fields which are not present in the current runtime dependency # See https://github.com/googleapis/gapic-generator-python/issues/1748 # Determine if the message type is proto-plus or protobuf - test_field = evaluation_service.UpdateEvaluationRequest.meta.fields["evaluation"] + test_field = evaluation_service.UpdateEvaluationDatasetRequest.meta.fields[ + "evaluation_dataset" + ] def get_message_fields(field): # Given a field which is a message (composite type), return a list with @@ -24412,7 +26537,7 @@ def get_message_fields(field): # For each item in the sample request, create a list of sub fields which are not present at runtime # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime - for field, value in request_init["evaluation"].items(): # pragma: NO COVER + for field, value in request_init["evaluation_dataset"].items(): # pragma: NO COVER result = None is_repeated = False # For repeated fields @@ -24442,56 +26567,180 @@ def get_message_fields(field): subfield = subfield_to_delete.get("subfield") if subfield: if field_repeated: - for i in range(0, len(request_init["evaluation"][field])): - del request_init["evaluation"][field][i][subfield] + for i in range(0, len(request_init["evaluation_dataset"][field])): + del request_init["evaluation_dataset"][field][i][subfield] else: - del request_init["evaluation"][field][subfield] + del request_init["evaluation_dataset"][field][subfield] + request = request_type(**request_init) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = evaluation.EvaluationDataset( + name="name_value", + display_name="display_name_value", + evaluations=["evaluations_value"], + etag="etag_value", + created_by="created_by_value", + last_updated_by="last_updated_by_value", + ) + + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = evaluation.EvaluationDataset.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.update_evaluation_dataset(request) + + # Establish that the response is the type that we expect. + assert isinstance(response, evaluation.EvaluationDataset) + assert response.name == "name_value" + assert response.display_name == "display_name_value" + assert response.evaluations == ["evaluations_value"] + assert response.etag == "etag_value" + assert response.created_by == "created_by_value" + assert response.last_updated_by == "last_updated_by_value" + + +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_update_evaluation_dataset_rest_interceptors(null_interceptor): + transport = transports.EvaluationServiceRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.EvaluationServiceRestInterceptor(), + ) + client = EvaluationServiceClient(transport=transport) + + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object( + transports.EvaluationServiceRestInterceptor, + "post_update_evaluation_dataset", + ) as post, + mock.patch.object( + transports.EvaluationServiceRestInterceptor, + "post_update_evaluation_dataset_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.EvaluationServiceRestInterceptor, "pre_update_evaluation_dataset" + ) as pre, + ): + pre.assert_not_called() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = evaluation_service.UpdateEvaluationDatasetRequest.pb( + evaluation_service.UpdateEvaluationDatasetRequest() + ) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } + + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = evaluation.EvaluationDataset.to_json( + evaluation.EvaluationDataset() + ) + req.return_value.content = return_value + + request = evaluation_service.UpdateEvaluationDatasetRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + post.return_value = evaluation.EvaluationDataset() + post_with_metadata.return_value = evaluation.EvaluationDataset(), metadata + + client.update_evaluation_dataset( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + + pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() + + +def test_delete_evaluation_rest_bad_request( + request_type=evaluation_service.DeleteEvaluationRequest, +): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4" + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.delete_evaluation(request) + + +@pytest.mark.parametrize( + "request_type", + [ + evaluation_service.DeleteEvaluationRequest, + dict, + ], +) +def test_delete_evaluation_rest_call_success(request_type): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4" + } request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = gcc_evaluation.Evaluation( - name="name_value", - display_name="display_name_value", - description="description_value", - tags=["tags_value"], - evaluation_datasets=["evaluation_datasets_value"], - created_by="created_by_value", - last_updated_by="last_updated_by_value", - evaluation_runs=["evaluation_runs_value"], - etag="etag_value", - invalid=True, - ) + return_value = None # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = gcc_evaluation.Evaluation.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) + json_return_value = "" response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.update_evaluation(request) + response = client.delete_evaluation(request) # Establish that the response is the type that we expect. - assert isinstance(response, gcc_evaluation.Evaluation) - assert response.name == "name_value" - assert response.display_name == "display_name_value" - assert response.description == "description_value" - assert response.tags == ["tags_value"] - assert response.evaluation_datasets == ["evaluation_datasets_value"] - assert response.created_by == "created_by_value" - assert response.last_updated_by == "last_updated_by_value" - assert response.evaluation_runs == ["evaluation_runs_value"] - assert response.etag == "etag_value" - assert response.invalid is True + assert response is None @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_update_evaluation_rest_interceptors(null_interceptor): +def test_delete_evaluation_rest_interceptors(null_interceptor): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -24504,21 +26753,12 @@ def test_update_evaluation_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.EvaluationServiceRestInterceptor, "post_update_evaluation" - ) as post, - mock.patch.object( - transports.EvaluationServiceRestInterceptor, - "post_update_evaluation_with_metadata", - ) as post_with_metadata, - mock.patch.object( - transports.EvaluationServiceRestInterceptor, "pre_update_evaluation" + transports.EvaluationServiceRestInterceptor, "pre_delete_evaluation" ) as pre, ): pre.assert_not_called() - post.assert_not_called() - post_with_metadata.assert_not_called() - pb_message = evaluation_service.UpdateEvaluationRequest.pb( - evaluation_service.UpdateEvaluationRequest() + pb_message = evaluation_service.DeleteEvaluationRequest.pb( + evaluation_service.DeleteEvaluationRequest() ) transcode.return_value = { "method": "post", @@ -24530,19 +26770,15 @@ def test_update_evaluation_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = gcc_evaluation.Evaluation.to_json(gcc_evaluation.Evaluation()) - req.return_value.content = return_value - request = evaluation_service.UpdateEvaluationRequest() + request = evaluation_service.DeleteEvaluationRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = gcc_evaluation.Evaluation() - post_with_metadata.return_value = gcc_evaluation.Evaluation(), metadata - client.update_evaluation( + client.delete_evaluation( request, metadata=[ ("key", "val"), @@ -24551,21 +26787,17 @@ def test_update_evaluation_rest_interceptors(null_interceptor): ) pre.assert_called_once() - post.assert_called_once() - post_with_metadata.assert_called_once() -def test_update_evaluation_dataset_rest_bad_request( - request_type=evaluation_service.UpdateEvaluationDatasetRequest, +def test_delete_evaluation_result_rest_bad_request( + request_type=evaluation_service.DeleteEvaluationResultRequest, ): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "evaluation_dataset": { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluationDatasets/sample4" - } + "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4/results/sample5" } request = request_type(**request_init) @@ -24582,175 +26814,161 @@ def test_update_evaluation_dataset_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.update_evaluation_dataset(request) + client.delete_evaluation_result(request) @pytest.mark.parametrize( "request_type", [ - evaluation_service.UpdateEvaluationDatasetRequest, + evaluation_service.DeleteEvaluationResultRequest, dict, ], ) -def test_update_evaluation_dataset_rest_call_success(request_type): +def test_delete_evaluation_result_rest_call_success(request_type): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "evaluation_dataset": { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluationDatasets/sample4" - } - } - request_init["evaluation_dataset"] = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluationDatasets/sample4", - "display_name": "display_name_value", - "evaluations": ["evaluations_value1", "evaluations_value2"], - "create_time": {"seconds": 751, "nanos": 543}, - "update_time": {}, - "etag": "etag_value", - "created_by": "created_by_value", - "last_updated_by": "last_updated_by_value", - "aggregated_metrics": { - "metrics_by_app_version": [ - { - "app_version_id": "app_version_id_value", - "tool_metrics": [ - {"tool": "tool_value", "pass_count": 1087, "fail_count": 1060} - ], - "semantic_similarity_metrics": [{"score": 0.54}], - "hallucination_metrics": [{"score": 0.54}], - "tool_call_latency_metrics": [ - { - "tool": "tool_value", - "average_latency": {"seconds": 751, "nanos": 543}, - } - ], - "turn_latency_metrics": [{"average_latency": {}}], - "pass_count": 1087, - "fail_count": 1060, - "metrics_by_turn": [ - { - "turn_index": 1088, - "tool_metrics": {}, - "semantic_similarity_metrics": {}, - "hallucination_metrics": {}, - "tool_call_latency_metrics": {}, - "turn_latency_metrics": {}, - } - ], - } - ] - }, + "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4/results/sample5" } - # The version of a generated dependency at test runtime may differ from the version used during generation. - # Delete any fields which are not present in the current runtime dependency - # See https://github.com/googleapis/gapic-generator-python/issues/1748 + request = request_type(**request_init) - # Determine if the message type is proto-plus or protobuf - test_field = evaluation_service.UpdateEvaluationDatasetRequest.meta.fields[ - "evaluation_dataset" - ] + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = None - def get_message_fields(field): - # Given a field which is a message (composite type), return a list with - # all the fields of the message. - # If the field is not a composite type, return an empty list. - message_fields = [] + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + json_return_value = "" + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.delete_evaluation_result(request) - if hasattr(field, "message") and field.message: - is_field_type_proto_plus_type = not hasattr(field.message, "DESCRIPTOR") + # Establish that the response is the type that we expect. + assert response is None - if is_field_type_proto_plus_type: - message_fields = field.message.meta.fields.values() - # Add `# pragma: NO COVER` because there may not be any `*_pb2` field types - else: # pragma: NO COVER - message_fields = field.message.DESCRIPTOR.fields - return message_fields - runtime_nested_fields = [ - (field.name, nested_field.name) - for field in get_message_fields(test_field) - for nested_field in get_message_fields(field) - ] +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_delete_evaluation_result_rest_interceptors(null_interceptor): + transport = transports.EvaluationServiceRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.EvaluationServiceRestInterceptor(), + ) + client = EvaluationServiceClient(transport=transport) - subfields_not_in_runtime = [] + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object( + transports.EvaluationServiceRestInterceptor, "pre_delete_evaluation_result" + ) as pre, + ): + pre.assert_not_called() + pb_message = evaluation_service.DeleteEvaluationResultRequest.pb( + evaluation_service.DeleteEvaluationResultRequest() + ) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } + + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + request = evaluation_service.DeleteEvaluationResultRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + + client.delete_evaluation_result( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + + pre.assert_called_once() + + +def test_delete_evaluation_dataset_rest_bad_request( + request_type=evaluation_service.DeleteEvaluationDatasetRequest, +): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/apps/sample3/evaluationDatasets/sample4" + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.delete_evaluation_dataset(request) - # For each item in the sample request, create a list of sub fields which are not present at runtime - # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime - for field, value in request_init["evaluation_dataset"].items(): # pragma: NO COVER - result = None - is_repeated = False - # For repeated fields - if isinstance(value, list) and len(value): - is_repeated = True - result = value[0] - # For fields where the type is another message - if isinstance(value, dict): - result = value - if result and hasattr(result, "keys"): - for subfield in result.keys(): - if (field, subfield) not in runtime_nested_fields: - subfields_not_in_runtime.append( - { - "field": field, - "subfield": subfield, - "is_repeated": is_repeated, - } - ) +@pytest.mark.parametrize( + "request_type", + [ + evaluation_service.DeleteEvaluationDatasetRequest, + dict, + ], +) +def test_delete_evaluation_dataset_rest_call_success(request_type): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) - # Remove fields from the sample request which are not present in the runtime version of the dependency - # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime - for subfield_to_delete in subfields_not_in_runtime: # pragma: NO COVER - field = subfield_to_delete.get("field") - field_repeated = subfield_to_delete.get("is_repeated") - subfield = subfield_to_delete.get("subfield") - if subfield: - if field_repeated: - for i in range(0, len(request_init["evaluation_dataset"][field])): - del request_init["evaluation_dataset"][field][i][subfield] - else: - del request_init["evaluation_dataset"][field][subfield] + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/apps/sample3/evaluationDatasets/sample4" + } request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation.EvaluationDataset( - name="name_value", - display_name="display_name_value", - evaluations=["evaluations_value"], - etag="etag_value", - created_by="created_by_value", - last_updated_by="last_updated_by_value", - ) + return_value = None # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = evaluation.EvaluationDataset.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) + json_return_value = "" response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.update_evaluation_dataset(request) + response = client.delete_evaluation_dataset(request) # Establish that the response is the type that we expect. - assert isinstance(response, evaluation.EvaluationDataset) - assert response.name == "name_value" - assert response.display_name == "display_name_value" - assert response.evaluations == ["evaluations_value"] - assert response.etag == "etag_value" - assert response.created_by == "created_by_value" - assert response.last_updated_by == "last_updated_by_value" + assert response is None @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_update_evaluation_dataset_rest_interceptors(null_interceptor): +def test_delete_evaluation_dataset_rest_interceptors(null_interceptor): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -24763,22 +26981,12 @@ def test_update_evaluation_dataset_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.EvaluationServiceRestInterceptor, - "post_update_evaluation_dataset", - ) as post, - mock.patch.object( - transports.EvaluationServiceRestInterceptor, - "post_update_evaluation_dataset_with_metadata", - ) as post_with_metadata, - mock.patch.object( - transports.EvaluationServiceRestInterceptor, "pre_update_evaluation_dataset" + transports.EvaluationServiceRestInterceptor, "pre_delete_evaluation_dataset" ) as pre, ): pre.assert_not_called() - post.assert_not_called() - post_with_metadata.assert_not_called() - pb_message = evaluation_service.UpdateEvaluationDatasetRequest.pb( - evaluation_service.UpdateEvaluationDatasetRequest() + pb_message = evaluation_service.DeleteEvaluationDatasetRequest.pb( + evaluation_service.DeleteEvaluationDatasetRequest() ) transcode.return_value = { "method": "post", @@ -24790,21 +26998,15 @@ def test_update_evaluation_dataset_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = evaluation.EvaluationDataset.to_json( - evaluation.EvaluationDataset() - ) - req.return_value.content = return_value - request = evaluation_service.UpdateEvaluationDatasetRequest() + request = evaluation_service.DeleteEvaluationDatasetRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = evaluation.EvaluationDataset() - post_with_metadata.return_value = evaluation.EvaluationDataset(), metadata - client.update_evaluation_dataset( + client.delete_evaluation_dataset( request, metadata=[ ("key", "val"), @@ -24813,19 +27015,17 @@ def test_update_evaluation_dataset_rest_interceptors(null_interceptor): ) pre.assert_called_once() - post.assert_called_once() - post_with_metadata.assert_called_once() -def test_delete_evaluation_rest_bad_request( - request_type=evaluation_service.DeleteEvaluationRequest, +def test_delete_evaluation_run_rest_bad_request( + request_type=evaluation_service.DeleteEvaluationRunRequest, ): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4" + "name": "projects/sample1/locations/sample2/apps/sample3/evaluationRuns/sample4" } request = request_type(**request_init) @@ -24842,47 +27042,47 @@ def test_delete_evaluation_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.delete_evaluation(request) + client.delete_evaluation_run(request) @pytest.mark.parametrize( "request_type", [ - evaluation_service.DeleteEvaluationRequest, + evaluation_service.DeleteEvaluationRunRequest, dict, ], ) -def test_delete_evaluation_rest_call_success(request_type): +def test_delete_evaluation_run_rest_call_success(request_type): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4" + "name": "projects/sample1/locations/sample2/apps/sample3/evaluationRuns/sample4" } request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = None + return_value = operations_pb2.Operation(name="operations/spam") # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 - json_return_value = "" + json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.delete_evaluation(request) + response = client.delete_evaluation_run(request) # Establish that the response is the type that we expect. - assert response is None + json_return_value = json_format.MessageToJson(return_value) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_delete_evaluation_rest_interceptors(null_interceptor): +def test_delete_evaluation_run_rest_interceptors(null_interceptor): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -24894,13 +27094,23 @@ def test_delete_evaluation_rest_interceptors(null_interceptor): with ( mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.EvaluationServiceRestInterceptor, "pre_delete_evaluation" + transports.EvaluationServiceRestInterceptor, "post_delete_evaluation_run" + ) as post, + mock.patch.object( + transports.EvaluationServiceRestInterceptor, + "post_delete_evaluation_run_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.EvaluationServiceRestInterceptor, "pre_delete_evaluation_run" ) as pre, ): pre.assert_not_called() - pb_message = evaluation_service.DeleteEvaluationRequest.pb( - evaluation_service.DeleteEvaluationRequest() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = evaluation_service.DeleteEvaluationRunRequest.pb( + evaluation_service.DeleteEvaluationRunRequest() ) transcode.return_value = { "method": "post", @@ -24912,15 +27122,19 @@ def test_delete_evaluation_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = json_format.MessageToJson(operations_pb2.Operation()) + req.return_value.content = return_value - request = evaluation_service.DeleteEvaluationRequest() + request = evaluation_service.DeleteEvaluationRunRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata + post.return_value = operations_pb2.Operation() + post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.delete_evaluation( + client.delete_evaluation_run( request, metadata=[ ("key", "val"), @@ -24929,17 +27143,19 @@ def test_delete_evaluation_rest_interceptors(null_interceptor): ) pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() -def test_delete_evaluation_result_rest_bad_request( - request_type=evaluation_service.DeleteEvaluationResultRequest, +def test_get_evaluation_rest_bad_request( + request_type=evaluation_service.GetEvaluationRequest, ): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4/results/sample5" + "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4" } request = request_type(**request_init) @@ -24956,47 +27172,71 @@ def test_delete_evaluation_result_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.delete_evaluation_result(request) + client.get_evaluation(request) @pytest.mark.parametrize( "request_type", [ - evaluation_service.DeleteEvaluationResultRequest, + evaluation_service.GetEvaluationRequest, dict, ], ) -def test_delete_evaluation_result_rest_call_success(request_type): +def test_get_evaluation_rest_call_success(request_type): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4/results/sample5" + "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4" } request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = None + return_value = evaluation.Evaluation( + name="name_value", + display_name="display_name_value", + description="description_value", + tags=["tags_value"], + evaluation_datasets=["evaluation_datasets_value"], + created_by="created_by_value", + last_updated_by="last_updated_by_value", + evaluation_runs=["evaluation_runs_value"], + etag="etag_value", + invalid=True, + ) # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 - json_return_value = "" + + # Convert return value to protobuf type + return_value = evaluation.Evaluation.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.delete_evaluation_result(request) + response = client.get_evaluation(request) # Establish that the response is the type that we expect. - assert response is None + assert isinstance(response, evaluation.Evaluation) + assert response.name == "name_value" + assert response.display_name == "display_name_value" + assert response.description == "description_value" + assert response.tags == ["tags_value"] + assert response.evaluation_datasets == ["evaluation_datasets_value"] + assert response.created_by == "created_by_value" + assert response.last_updated_by == "last_updated_by_value" + assert response.evaluation_runs == ["evaluation_runs_value"] + assert response.etag == "etag_value" + assert response.invalid is True @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_delete_evaluation_result_rest_interceptors(null_interceptor): +def test_get_evaluation_rest_interceptors(null_interceptor): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -25009,12 +27249,21 @@ def test_delete_evaluation_result_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.EvaluationServiceRestInterceptor, "pre_delete_evaluation_result" + transports.EvaluationServiceRestInterceptor, "post_get_evaluation" + ) as post, + mock.patch.object( + transports.EvaluationServiceRestInterceptor, + "post_get_evaluation_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.EvaluationServiceRestInterceptor, "pre_get_evaluation" ) as pre, ): pre.assert_not_called() - pb_message = evaluation_service.DeleteEvaluationResultRequest.pb( - evaluation_service.DeleteEvaluationResultRequest() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = evaluation_service.GetEvaluationRequest.pb( + evaluation_service.GetEvaluationRequest() ) transcode.return_value = { "method": "post", @@ -25026,15 +27275,19 @@ def test_delete_evaluation_result_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = evaluation.Evaluation.to_json(evaluation.Evaluation()) + req.return_value.content = return_value - request = evaluation_service.DeleteEvaluationResultRequest() + request = evaluation_service.GetEvaluationRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata + post.return_value = evaluation.Evaluation() + post_with_metadata.return_value = evaluation.Evaluation(), metadata - client.delete_evaluation_result( + client.get_evaluation( request, metadata=[ ("key", "val"), @@ -25043,17 +27296,19 @@ def test_delete_evaluation_result_rest_interceptors(null_interceptor): ) pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() -def test_delete_evaluation_dataset_rest_bad_request( - request_type=evaluation_service.DeleteEvaluationDatasetRequest, +def test_get_evaluation_result_rest_bad_request( + request_type=evaluation_service.GetEvaluationResultRequest, ): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluationDatasets/sample4" + "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4/results/sample5" } request = request_type(**request_init) @@ -25070,47 +27325,71 @@ def test_delete_evaluation_dataset_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.delete_evaluation_dataset(request) + client.get_evaluation_result(request) @pytest.mark.parametrize( "request_type", [ - evaluation_service.DeleteEvaluationDatasetRequest, + evaluation_service.GetEvaluationResultRequest, dict, ], ) -def test_delete_evaluation_dataset_rest_call_success(request_type): +def test_get_evaluation_result_rest_call_success(request_type): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluationDatasets/sample4" + "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4/results/sample5" } request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = None + return_value = evaluation.EvaluationResult( + name="name_value", + display_name="display_name_value", + evaluation_status=evaluation.EvaluationResult.Outcome.PASS, + evaluation_run="evaluation_run_value", + initiated_by="initiated_by_value", + app_version="app_version_value", + app_version_display_name="app_version_display_name_value", + changelog="changelog_value", + execution_state=evaluation.EvaluationResult.ExecutionState.QUEUED, + golden_run_method=golden_run.GoldenRunMethod.STABLE, + ) # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 - json_return_value = "" + + # Convert return value to protobuf type + return_value = evaluation.EvaluationResult.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.delete_evaluation_dataset(request) + response = client.get_evaluation_result(request) # Establish that the response is the type that we expect. - assert response is None + assert isinstance(response, evaluation.EvaluationResult) + assert response.name == "name_value" + assert response.display_name == "display_name_value" + assert response.evaluation_status == evaluation.EvaluationResult.Outcome.PASS + assert response.evaluation_run == "evaluation_run_value" + assert response.initiated_by == "initiated_by_value" + assert response.app_version == "app_version_value" + assert response.app_version_display_name == "app_version_display_name_value" + assert response.changelog == "changelog_value" + assert response.execution_state == evaluation.EvaluationResult.ExecutionState.QUEUED + assert response.golden_run_method == golden_run.GoldenRunMethod.STABLE @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_delete_evaluation_dataset_rest_interceptors(null_interceptor): +def test_get_evaluation_result_rest_interceptors(null_interceptor): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -25123,12 +27402,21 @@ def test_delete_evaluation_dataset_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.EvaluationServiceRestInterceptor, "pre_delete_evaluation_dataset" + transports.EvaluationServiceRestInterceptor, "post_get_evaluation_result" + ) as post, + mock.patch.object( + transports.EvaluationServiceRestInterceptor, + "post_get_evaluation_result_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.EvaluationServiceRestInterceptor, "pre_get_evaluation_result" ) as pre, ): pre.assert_not_called() - pb_message = evaluation_service.DeleteEvaluationDatasetRequest.pb( - evaluation_service.DeleteEvaluationDatasetRequest() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = evaluation_service.GetEvaluationResultRequest.pb( + evaluation_service.GetEvaluationResultRequest() ) transcode.return_value = { "method": "post", @@ -25140,15 +27428,21 @@ def test_delete_evaluation_dataset_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = evaluation.EvaluationResult.to_json( + evaluation.EvaluationResult() + ) + req.return_value.content = return_value - request = evaluation_service.DeleteEvaluationDatasetRequest() + request = evaluation_service.GetEvaluationResultRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata + post.return_value = evaluation.EvaluationResult() + post_with_metadata.return_value = evaluation.EvaluationResult(), metadata - client.delete_evaluation_dataset( + client.get_evaluation_result( request, metadata=[ ("key", "val"), @@ -25157,17 +27451,19 @@ def test_delete_evaluation_dataset_rest_interceptors(null_interceptor): ) pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() -def test_delete_evaluation_run_rest_bad_request( - request_type=evaluation_service.DeleteEvaluationRunRequest, +def test_get_evaluation_dataset_rest_bad_request( + request_type=evaluation_service.GetEvaluationDatasetRequest, ): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluationRuns/sample4" + "name": "projects/sample1/locations/sample2/apps/sample3/evaluationDatasets/sample4" } request = request_type(**request_init) @@ -25184,47 +27480,63 @@ def test_delete_evaluation_run_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.delete_evaluation_run(request) + client.get_evaluation_dataset(request) @pytest.mark.parametrize( "request_type", [ - evaluation_service.DeleteEvaluationRunRequest, + evaluation_service.GetEvaluationDatasetRequest, dict, ], ) -def test_delete_evaluation_run_rest_call_success(request_type): +def test_get_evaluation_dataset_rest_call_success(request_type): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluationRuns/sample4" + "name": "projects/sample1/locations/sample2/apps/sample3/evaluationDatasets/sample4" } request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = evaluation.EvaluationDataset( + name="name_value", + display_name="display_name_value", + evaluations=["evaluations_value"], + etag="etag_value", + created_by="created_by_value", + last_updated_by="last_updated_by_value", + ) # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = evaluation.EvaluationDataset.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.delete_evaluation_run(request) + response = client.get_evaluation_dataset(request) # Establish that the response is the type that we expect. - json_return_value = json_format.MessageToJson(return_value) + assert isinstance(response, evaluation.EvaluationDataset) + assert response.name == "name_value" + assert response.display_name == "display_name_value" + assert response.evaluations == ["evaluations_value"] + assert response.etag == "etag_value" + assert response.created_by == "created_by_value" + assert response.last_updated_by == "last_updated_by_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_delete_evaluation_run_rest_interceptors(null_interceptor): +def test_get_evaluation_dataset_rest_interceptors(null_interceptor): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -25236,23 +27548,22 @@ def test_delete_evaluation_run_rest_interceptors(null_interceptor): with ( mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, - mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.EvaluationServiceRestInterceptor, "post_delete_evaluation_run" + transports.EvaluationServiceRestInterceptor, "post_get_evaluation_dataset" ) as post, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "post_delete_evaluation_run_with_metadata", + "post_get_evaluation_dataset_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.EvaluationServiceRestInterceptor, "pre_delete_evaluation_run" + transports.EvaluationServiceRestInterceptor, "pre_get_evaluation_dataset" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = evaluation_service.DeleteEvaluationRunRequest.pb( - evaluation_service.DeleteEvaluationRunRequest() + pb_message = evaluation_service.GetEvaluationDatasetRequest.pb( + evaluation_service.GetEvaluationDatasetRequest() ) transcode.return_value = { "method": "post", @@ -25264,19 +27575,21 @@ def test_delete_evaluation_run_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = json_format.MessageToJson(operations_pb2.Operation()) + return_value = evaluation.EvaluationDataset.to_json( + evaluation.EvaluationDataset() + ) req.return_value.content = return_value - request = evaluation_service.DeleteEvaluationRunRequest() + request = evaluation_service.GetEvaluationDatasetRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = operations_pb2.Operation() - post_with_metadata.return_value = operations_pb2.Operation(), metadata + post.return_value = evaluation.EvaluationDataset() + post_with_metadata.return_value = evaluation.EvaluationDataset(), metadata - client.delete_evaluation_run( + client.get_evaluation_dataset( request, metadata=[ ("key", "val"), @@ -25289,15 +27602,15 @@ def test_delete_evaluation_run_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_get_evaluation_rest_bad_request( - request_type=evaluation_service.GetEvaluationRequest, +def test_get_evaluation_run_rest_bad_request( + request_type=evaluation_service.GetEvaluationRunRequest, ): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4" + "name": "projects/sample1/locations/sample2/apps/sample3/evaluationRuns/sample4" } request = request_type(**request_init) @@ -25314,41 +27627,46 @@ def test_get_evaluation_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_evaluation(request) + client.get_evaluation_run(request) @pytest.mark.parametrize( "request_type", [ - evaluation_service.GetEvaluationRequest, + evaluation_service.GetEvaluationRunRequest, dict, ], ) -def test_get_evaluation_rest_call_success(request_type): +def test_get_evaluation_run_rest_call_success(request_type): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4" + "name": "projects/sample1/locations/sample2/apps/sample3/evaluationRuns/sample4" } request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation.Evaluation( + return_value = evaluation.EvaluationRun( name="name_value", display_name="display_name_value", - description="description_value", - tags=["tags_value"], - evaluation_datasets=["evaluation_datasets_value"], - created_by="created_by_value", - last_updated_by="last_updated_by_value", - evaluation_runs=["evaluation_runs_value"], - etag="etag_value", - invalid=True, + evaluation_results=["evaluation_results_value"], + initiated_by="initiated_by_value", + app_version="app_version_value", + app_version_display_name="app_version_display_name_value", + changelog="changelog_value", + evaluations=["evaluations_value"], + evaluation_dataset="evaluation_dataset_value", + evaluation_type=evaluation.EvaluationRun.EvaluationType.GOLDEN, + state=evaluation.EvaluationRun.EvaluationRunState.QUEUED, + run_count=989, + scheduled_evaluation_run="scheduled_evaluation_run_value", + golden_run_method=golden_run.GoldenRunMethod.STABLE, + operation="operation_value", ) # Wrap the value into a proper Response obj @@ -25356,29 +27674,34 @@ def test_get_evaluation_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation.Evaluation.pb(return_value) + return_value = evaluation.EvaluationRun.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_evaluation(request) + response = client.get_evaluation_run(request) # Establish that the response is the type that we expect. - assert isinstance(response, evaluation.Evaluation) + assert isinstance(response, evaluation.EvaluationRun) assert response.name == "name_value" assert response.display_name == "display_name_value" - assert response.description == "description_value" - assert response.tags == ["tags_value"] - assert response.evaluation_datasets == ["evaluation_datasets_value"] - assert response.created_by == "created_by_value" - assert response.last_updated_by == "last_updated_by_value" - assert response.evaluation_runs == ["evaluation_runs_value"] - assert response.etag == "etag_value" - assert response.invalid is True + assert response.evaluation_results == ["evaluation_results_value"] + assert response.initiated_by == "initiated_by_value" + assert response.app_version == "app_version_value" + assert response.app_version_display_name == "app_version_display_name_value" + assert response.changelog == "changelog_value" + assert response.evaluations == ["evaluations_value"] + assert response.evaluation_dataset == "evaluation_dataset_value" + assert response.evaluation_type == evaluation.EvaluationRun.EvaluationType.GOLDEN + assert response.state == evaluation.EvaluationRun.EvaluationRunState.QUEUED + assert response.run_count == 989 + assert response.scheduled_evaluation_run == "scheduled_evaluation_run_value" + assert response.golden_run_method == golden_run.GoldenRunMethod.STABLE + assert response.operation == "operation_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_get_evaluation_rest_interceptors(null_interceptor): +def test_get_evaluation_run_rest_interceptors(null_interceptor): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -25391,21 +27714,21 @@ def test_get_evaluation_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.EvaluationServiceRestInterceptor, "post_get_evaluation" + transports.EvaluationServiceRestInterceptor, "post_get_evaluation_run" ) as post, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "post_get_evaluation_with_metadata", + "post_get_evaluation_run_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.EvaluationServiceRestInterceptor, "pre_get_evaluation" + transports.EvaluationServiceRestInterceptor, "pre_get_evaluation_run" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = evaluation_service.GetEvaluationRequest.pb( - evaluation_service.GetEvaluationRequest() + pb_message = evaluation_service.GetEvaluationRunRequest.pb( + evaluation_service.GetEvaluationRunRequest() ) transcode.return_value = { "method": "post", @@ -25417,19 +27740,19 @@ def test_get_evaluation_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = evaluation.Evaluation.to_json(evaluation.Evaluation()) + return_value = evaluation.EvaluationRun.to_json(evaluation.EvaluationRun()) req.return_value.content = return_value - request = evaluation_service.GetEvaluationRequest() + request = evaluation_service.GetEvaluationRunRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = evaluation.Evaluation() - post_with_metadata.return_value = evaluation.Evaluation(), metadata + post.return_value = evaluation.EvaluationRun() + post_with_metadata.return_value = evaluation.EvaluationRun(), metadata - client.get_evaluation( + client.get_evaluation_run( request, metadata=[ ("key", "val"), @@ -25442,16 +27765,14 @@ def test_get_evaluation_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_get_evaluation_result_rest_bad_request( - request_type=evaluation_service.GetEvaluationResultRequest, +def test_list_evaluations_rest_bad_request( + request_type=evaluation_service.ListEvaluationsRequest, ): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4/results/sample5" - } + request_init = {"parent": "projects/sample1/locations/sample2/apps/sample3"} request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -25467,41 +27788,30 @@ def test_get_evaluation_result_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_evaluation_result(request) + client.list_evaluations(request) @pytest.mark.parametrize( "request_type", [ - evaluation_service.GetEvaluationResultRequest, + evaluation_service.ListEvaluationsRequest, dict, ], ) -def test_get_evaluation_result_rest_call_success(request_type): +def test_list_evaluations_rest_call_success(request_type): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4/results/sample5" - } + request_init = {"parent": "projects/sample1/locations/sample2/apps/sample3"} request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation.EvaluationResult( - name="name_value", - display_name="display_name_value", - evaluation_status=evaluation.EvaluationResult.Outcome.PASS, - evaluation_run="evaluation_run_value", - initiated_by="initiated_by_value", - app_version="app_version_value", - app_version_display_name="app_version_display_name_value", - changelog="changelog_value", - execution_state=evaluation.EvaluationResult.ExecutionState.RUNNING, - golden_run_method=golden_run.GoldenRunMethod.STABLE, + return_value = evaluation_service.ListEvaluationsResponse( + next_page_token="next_page_token_value", ) # Wrap the value into a proper Response obj @@ -25509,31 +27819,20 @@ def test_get_evaluation_result_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation.EvaluationResult.pb(return_value) + return_value = evaluation_service.ListEvaluationsResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_evaluation_result(request) + response = client.list_evaluations(request) # Establish that the response is the type that we expect. - assert isinstance(response, evaluation.EvaluationResult) - assert response.name == "name_value" - assert response.display_name == "display_name_value" - assert response.evaluation_status == evaluation.EvaluationResult.Outcome.PASS - assert response.evaluation_run == "evaluation_run_value" - assert response.initiated_by == "initiated_by_value" - assert response.app_version == "app_version_value" - assert response.app_version_display_name == "app_version_display_name_value" - assert response.changelog == "changelog_value" - assert ( - response.execution_state == evaluation.EvaluationResult.ExecutionState.RUNNING - ) - assert response.golden_run_method == golden_run.GoldenRunMethod.STABLE + assert isinstance(response, pagers.ListEvaluationsPager) + assert response.next_page_token == "next_page_token_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_get_evaluation_result_rest_interceptors(null_interceptor): +def test_list_evaluations_rest_interceptors(null_interceptor): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -25546,21 +27845,21 @@ def test_get_evaluation_result_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.EvaluationServiceRestInterceptor, "post_get_evaluation_result" + transports.EvaluationServiceRestInterceptor, "post_list_evaluations" ) as post, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "post_get_evaluation_result_with_metadata", + "post_list_evaluations_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.EvaluationServiceRestInterceptor, "pre_get_evaluation_result" + transports.EvaluationServiceRestInterceptor, "pre_list_evaluations" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = evaluation_service.GetEvaluationResultRequest.pb( - evaluation_service.GetEvaluationResultRequest() + pb_message = evaluation_service.ListEvaluationsRequest.pb( + evaluation_service.ListEvaluationsRequest() ) transcode.return_value = { "method": "post", @@ -25572,21 +27871,24 @@ def test_get_evaluation_result_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = evaluation.EvaluationResult.to_json( - evaluation.EvaluationResult() + return_value = evaluation_service.ListEvaluationsResponse.to_json( + evaluation_service.ListEvaluationsResponse() ) req.return_value.content = return_value - request = evaluation_service.GetEvaluationResultRequest() + request = evaluation_service.ListEvaluationsRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = evaluation.EvaluationResult() - post_with_metadata.return_value = evaluation.EvaluationResult(), metadata + post.return_value = evaluation_service.ListEvaluationsResponse() + post_with_metadata.return_value = ( + evaluation_service.ListEvaluationsResponse(), + metadata, + ) - client.get_evaluation_result( + client.list_evaluations( request, metadata=[ ("key", "val"), @@ -25599,15 +27901,15 @@ def test_get_evaluation_result_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_get_evaluation_dataset_rest_bad_request( - request_type=evaluation_service.GetEvaluationDatasetRequest, +def test_list_evaluation_results_rest_bad_request( + request_type=evaluation_service.ListEvaluationResultsRequest, ): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluationDatasets/sample4" + "parent": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4" } request = request_type(**request_init) @@ -25624,37 +27926,32 @@ def test_get_evaluation_dataset_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_evaluation_dataset(request) + client.list_evaluation_results(request) @pytest.mark.parametrize( "request_type", [ - evaluation_service.GetEvaluationDatasetRequest, + evaluation_service.ListEvaluationResultsRequest, dict, ], ) -def test_get_evaluation_dataset_rest_call_success(request_type): +def test_list_evaluation_results_rest_call_success(request_type): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluationDatasets/sample4" + "parent": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4" } request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation.EvaluationDataset( - name="name_value", - display_name="display_name_value", - evaluations=["evaluations_value"], - etag="etag_value", - created_by="created_by_value", - last_updated_by="last_updated_by_value", + return_value = evaluation_service.ListEvaluationResultsResponse( + next_page_token="next_page_token_value", ) # Wrap the value into a proper Response obj @@ -25662,25 +27959,20 @@ def test_get_evaluation_dataset_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation.EvaluationDataset.pb(return_value) + return_value = evaluation_service.ListEvaluationResultsResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_evaluation_dataset(request) + response = client.list_evaluation_results(request) # Establish that the response is the type that we expect. - assert isinstance(response, evaluation.EvaluationDataset) - assert response.name == "name_value" - assert response.display_name == "display_name_value" - assert response.evaluations == ["evaluations_value"] - assert response.etag == "etag_value" - assert response.created_by == "created_by_value" - assert response.last_updated_by == "last_updated_by_value" + assert isinstance(response, pagers.ListEvaluationResultsPager) + assert response.next_page_token == "next_page_token_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_get_evaluation_dataset_rest_interceptors(null_interceptor): +def test_list_evaluation_results_rest_interceptors(null_interceptor): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -25693,21 +27985,21 @@ def test_get_evaluation_dataset_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.EvaluationServiceRestInterceptor, "post_get_evaluation_dataset" + transports.EvaluationServiceRestInterceptor, "post_list_evaluation_results" ) as post, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "post_get_evaluation_dataset_with_metadata", + "post_list_evaluation_results_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.EvaluationServiceRestInterceptor, "pre_get_evaluation_dataset" + transports.EvaluationServiceRestInterceptor, "pre_list_evaluation_results" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = evaluation_service.GetEvaluationDatasetRequest.pb( - evaluation_service.GetEvaluationDatasetRequest() + pb_message = evaluation_service.ListEvaluationResultsRequest.pb( + evaluation_service.ListEvaluationResultsRequest() ) transcode.return_value = { "method": "post", @@ -25719,21 +28011,24 @@ def test_get_evaluation_dataset_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = evaluation.EvaluationDataset.to_json( - evaluation.EvaluationDataset() + return_value = evaluation_service.ListEvaluationResultsResponse.to_json( + evaluation_service.ListEvaluationResultsResponse() ) req.return_value.content = return_value - request = evaluation_service.GetEvaluationDatasetRequest() + request = evaluation_service.ListEvaluationResultsRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = evaluation.EvaluationDataset() - post_with_metadata.return_value = evaluation.EvaluationDataset(), metadata + post.return_value = evaluation_service.ListEvaluationResultsResponse() + post_with_metadata.return_value = ( + evaluation_service.ListEvaluationResultsResponse(), + metadata, + ) - client.get_evaluation_dataset( + client.list_evaluation_results( request, metadata=[ ("key", "val"), @@ -25746,16 +28041,14 @@ def test_get_evaluation_dataset_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_get_evaluation_run_rest_bad_request( - request_type=evaluation_service.GetEvaluationRunRequest, +def test_list_evaluation_datasets_rest_bad_request( + request_type=evaluation_service.ListEvaluationDatasetsRequest, ): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluationRuns/sample4" - } + request_init = {"parent": "projects/sample1/locations/sample2/apps/sample3"} request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -25771,45 +28064,30 @@ def test_get_evaluation_run_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_evaluation_run(request) + client.list_evaluation_datasets(request) @pytest.mark.parametrize( "request_type", [ - evaluation_service.GetEvaluationRunRequest, + evaluation_service.ListEvaluationDatasetsRequest, dict, ], ) -def test_get_evaluation_run_rest_call_success(request_type): +def test_list_evaluation_datasets_rest_call_success(request_type): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluationRuns/sample4" - } + request_init = {"parent": "projects/sample1/locations/sample2/apps/sample3"} request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation.EvaluationRun( - name="name_value", - display_name="display_name_value", - evaluation_results=["evaluation_results_value"], - initiated_by="initiated_by_value", - app_version="app_version_value", - app_version_display_name="app_version_display_name_value", - changelog="changelog_value", - evaluations=["evaluations_value"], - evaluation_dataset="evaluation_dataset_value", - evaluation_type=evaluation.EvaluationRun.EvaluationType.GOLDEN, - state=evaluation.EvaluationRun.EvaluationRunState.RUNNING, - run_count=989, - scheduled_evaluation_run="scheduled_evaluation_run_value", - golden_run_method=golden_run.GoldenRunMethod.STABLE, + return_value = evaluation_service.ListEvaluationDatasetsResponse( + next_page_token="next_page_token_value", ) # Wrap the value into a proper Response obj @@ -25817,33 +28095,22 @@ def test_get_evaluation_run_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation.EvaluationRun.pb(return_value) + return_value = evaluation_service.ListEvaluationDatasetsResponse.pb( + return_value + ) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_evaluation_run(request) + response = client.list_evaluation_datasets(request) # Establish that the response is the type that we expect. - assert isinstance(response, evaluation.EvaluationRun) - assert response.name == "name_value" - assert response.display_name == "display_name_value" - assert response.evaluation_results == ["evaluation_results_value"] - assert response.initiated_by == "initiated_by_value" - assert response.app_version == "app_version_value" - assert response.app_version_display_name == "app_version_display_name_value" - assert response.changelog == "changelog_value" - assert response.evaluations == ["evaluations_value"] - assert response.evaluation_dataset == "evaluation_dataset_value" - assert response.evaluation_type == evaluation.EvaluationRun.EvaluationType.GOLDEN - assert response.state == evaluation.EvaluationRun.EvaluationRunState.RUNNING - assert response.run_count == 989 - assert response.scheduled_evaluation_run == "scheduled_evaluation_run_value" - assert response.golden_run_method == golden_run.GoldenRunMethod.STABLE + assert isinstance(response, pagers.ListEvaluationDatasetsPager) + assert response.next_page_token == "next_page_token_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_get_evaluation_run_rest_interceptors(null_interceptor): +def test_list_evaluation_datasets_rest_interceptors(null_interceptor): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -25856,21 +28123,21 @@ def test_get_evaluation_run_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.EvaluationServiceRestInterceptor, "post_get_evaluation_run" + transports.EvaluationServiceRestInterceptor, "post_list_evaluation_datasets" ) as post, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "post_get_evaluation_run_with_metadata", + "post_list_evaluation_datasets_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.EvaluationServiceRestInterceptor, "pre_get_evaluation_run" + transports.EvaluationServiceRestInterceptor, "pre_list_evaluation_datasets" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = evaluation_service.GetEvaluationRunRequest.pb( - evaluation_service.GetEvaluationRunRequest() + pb_message = evaluation_service.ListEvaluationDatasetsRequest.pb( + evaluation_service.ListEvaluationDatasetsRequest() ) transcode.return_value = { "method": "post", @@ -25882,19 +28149,24 @@ def test_get_evaluation_run_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = evaluation.EvaluationRun.to_json(evaluation.EvaluationRun()) + return_value = evaluation_service.ListEvaluationDatasetsResponse.to_json( + evaluation_service.ListEvaluationDatasetsResponse() + ) req.return_value.content = return_value - request = evaluation_service.GetEvaluationRunRequest() + request = evaluation_service.ListEvaluationDatasetsRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = evaluation.EvaluationRun() - post_with_metadata.return_value = evaluation.EvaluationRun(), metadata + post.return_value = evaluation_service.ListEvaluationDatasetsResponse() + post_with_metadata.return_value = ( + evaluation_service.ListEvaluationDatasetsResponse(), + metadata, + ) - client.get_evaluation_run( + client.list_evaluation_datasets( request, metadata=[ ("key", "val"), @@ -25907,8 +28179,8 @@ def test_get_evaluation_run_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_list_evaluations_rest_bad_request( - request_type=evaluation_service.ListEvaluationsRequest, +def test_list_evaluation_runs_rest_bad_request( + request_type=evaluation_service.ListEvaluationRunsRequest, ): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" @@ -25930,17 +28202,17 @@ def test_list_evaluations_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_evaluations(request) + client.list_evaluation_runs(request) @pytest.mark.parametrize( "request_type", [ - evaluation_service.ListEvaluationsRequest, + evaluation_service.ListEvaluationRunsRequest, dict, ], ) -def test_list_evaluations_rest_call_success(request_type): +def test_list_evaluation_runs_rest_call_success(request_type): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) @@ -25952,7 +28224,7 @@ def test_list_evaluations_rest_call_success(request_type): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation_service.ListEvaluationsResponse( + return_value = evaluation_service.ListEvaluationRunsResponse( next_page_token="next_page_token_value", ) @@ -25961,20 +28233,20 @@ def test_list_evaluations_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation_service.ListEvaluationsResponse.pb(return_value) + return_value = evaluation_service.ListEvaluationRunsResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_evaluations(request) + response = client.list_evaluation_runs(request) # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListEvaluationsPager) + assert isinstance(response, pagers.ListEvaluationRunsPager) assert response.next_page_token == "next_page_token_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_evaluations_rest_interceptors(null_interceptor): +def test_list_evaluation_runs_rest_interceptors(null_interceptor): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -25987,21 +28259,21 @@ def test_list_evaluations_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.EvaluationServiceRestInterceptor, "post_list_evaluations" + transports.EvaluationServiceRestInterceptor, "post_list_evaluation_runs" ) as post, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "post_list_evaluations_with_metadata", + "post_list_evaluation_runs_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.EvaluationServiceRestInterceptor, "pre_list_evaluations" + transports.EvaluationServiceRestInterceptor, "pre_list_evaluation_runs" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = evaluation_service.ListEvaluationsRequest.pb( - evaluation_service.ListEvaluationsRequest() + pb_message = evaluation_service.ListEvaluationRunsRequest.pb( + evaluation_service.ListEvaluationRunsRequest() ) transcode.return_value = { "method": "post", @@ -26013,24 +28285,24 @@ def test_list_evaluations_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = evaluation_service.ListEvaluationsResponse.to_json( - evaluation_service.ListEvaluationsResponse() + return_value = evaluation_service.ListEvaluationRunsResponse.to_json( + evaluation_service.ListEvaluationRunsResponse() ) req.return_value.content = return_value - request = evaluation_service.ListEvaluationsRequest() + request = evaluation_service.ListEvaluationRunsRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = evaluation_service.ListEvaluationsResponse() + post.return_value = evaluation_service.ListEvaluationRunsResponse() post_with_metadata.return_value = ( - evaluation_service.ListEvaluationsResponse(), + evaluation_service.ListEvaluationRunsResponse(), metadata, ) - client.list_evaluations( + client.list_evaluation_runs( request, metadata=[ ("key", "val"), @@ -26043,16 +28315,14 @@ def test_list_evaluations_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_list_evaluation_results_rest_bad_request( - request_type=evaluation_service.ListEvaluationResultsRequest, +def test_list_evaluation_expectations_rest_bad_request( + request_type=evaluation_service.ListEvaluationExpectationsRequest, ): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "parent": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4" - } + request_init = {"parent": "projects/sample1/locations/sample2/apps/sample3"} request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -26068,31 +28338,29 @@ def test_list_evaluation_results_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_evaluation_results(request) + client.list_evaluation_expectations(request) @pytest.mark.parametrize( "request_type", [ - evaluation_service.ListEvaluationResultsRequest, + evaluation_service.ListEvaluationExpectationsRequest, dict, ], ) -def test_list_evaluation_results_rest_call_success(request_type): +def test_list_evaluation_expectations_rest_call_success(request_type): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "parent": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4" - } + request_init = {"parent": "projects/sample1/locations/sample2/apps/sample3"} request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation_service.ListEvaluationResultsResponse( + return_value = evaluation_service.ListEvaluationExpectationsResponse( next_page_token="next_page_token_value", ) @@ -26101,20 +28369,22 @@ def test_list_evaluation_results_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation_service.ListEvaluationResultsResponse.pb(return_value) + return_value = evaluation_service.ListEvaluationExpectationsResponse.pb( + return_value + ) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_evaluation_results(request) + response = client.list_evaluation_expectations(request) # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListEvaluationResultsPager) + assert isinstance(response, pagers.ListEvaluationExpectationsPager) assert response.next_page_token == "next_page_token_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_evaluation_results_rest_interceptors(null_interceptor): +def test_list_evaluation_expectations_rest_interceptors(null_interceptor): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -26127,21 +28397,23 @@ def test_list_evaluation_results_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.EvaluationServiceRestInterceptor, "post_list_evaluation_results" + transports.EvaluationServiceRestInterceptor, + "post_list_evaluation_expectations", ) as post, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "post_list_evaluation_results_with_metadata", + "post_list_evaluation_expectations_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.EvaluationServiceRestInterceptor, "pre_list_evaluation_results" + transports.EvaluationServiceRestInterceptor, + "pre_list_evaluation_expectations", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = evaluation_service.ListEvaluationResultsRequest.pb( - evaluation_service.ListEvaluationResultsRequest() + pb_message = evaluation_service.ListEvaluationExpectationsRequest.pb( + evaluation_service.ListEvaluationExpectationsRequest() ) transcode.return_value = { "method": "post", @@ -26153,24 +28425,24 @@ def test_list_evaluation_results_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = evaluation_service.ListEvaluationResultsResponse.to_json( - evaluation_service.ListEvaluationResultsResponse() + return_value = evaluation_service.ListEvaluationExpectationsResponse.to_json( + evaluation_service.ListEvaluationExpectationsResponse() ) req.return_value.content = return_value - request = evaluation_service.ListEvaluationResultsRequest() + request = evaluation_service.ListEvaluationExpectationsRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = evaluation_service.ListEvaluationResultsResponse() + post.return_value = evaluation_service.ListEvaluationExpectationsResponse() post_with_metadata.return_value = ( - evaluation_service.ListEvaluationResultsResponse(), + evaluation_service.ListEvaluationExpectationsResponse(), metadata, ) - client.list_evaluation_results( + client.list_evaluation_expectations( request, metadata=[ ("key", "val"), @@ -26183,14 +28455,16 @@ def test_list_evaluation_results_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_list_evaluation_datasets_rest_bad_request( - request_type=evaluation_service.ListEvaluationDatasetsRequest, +def test_get_evaluation_expectation_rest_bad_request( + request_type=evaluation_service.GetEvaluationExpectationRequest, ): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2/apps/sample3"} + request_init = { + "name": "projects/sample1/locations/sample2/apps/sample3/evaluationExpectations/sample4" + } request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -26206,30 +28480,35 @@ def test_list_evaluation_datasets_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_evaluation_datasets(request) + client.get_evaluation_expectation(request) @pytest.mark.parametrize( "request_type", [ - evaluation_service.ListEvaluationDatasetsRequest, + evaluation_service.GetEvaluationExpectationRequest, dict, ], ) -def test_list_evaluation_datasets_rest_call_success(request_type): +def test_get_evaluation_expectation_rest_call_success(request_type): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2/apps/sample3"} + request_init = { + "name": "projects/sample1/locations/sample2/apps/sample3/evaluationExpectations/sample4" + } request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = evaluation_service.ListEvaluationDatasetsResponse( - next_page_token="next_page_token_value", + # Designate an appropriate value for the returned response. + return_value = evaluation.EvaluationExpectation( + name="name_value", + display_name="display_name_value", + tags=["tags_value"], + etag="etag_value", ) # Wrap the value into a proper Response obj @@ -26237,22 +28516,23 @@ def test_list_evaluation_datasets_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation_service.ListEvaluationDatasetsResponse.pb( - return_value - ) + return_value = evaluation.EvaluationExpectation.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_evaluation_datasets(request) + response = client.get_evaluation_expectation(request) # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListEvaluationDatasetsPager) - assert response.next_page_token == "next_page_token_value" + assert isinstance(response, evaluation.EvaluationExpectation) + assert response.name == "name_value" + assert response.display_name == "display_name_value" + assert response.tags == ["tags_value"] + assert response.etag == "etag_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_evaluation_datasets_rest_interceptors(null_interceptor): +def test_get_evaluation_expectation_rest_interceptors(null_interceptor): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -26265,21 +28545,23 @@ def test_list_evaluation_datasets_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.EvaluationServiceRestInterceptor, "post_list_evaluation_datasets" + transports.EvaluationServiceRestInterceptor, + "post_get_evaluation_expectation", ) as post, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "post_list_evaluation_datasets_with_metadata", + "post_get_evaluation_expectation_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.EvaluationServiceRestInterceptor, "pre_list_evaluation_datasets" + transports.EvaluationServiceRestInterceptor, + "pre_get_evaluation_expectation", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = evaluation_service.ListEvaluationDatasetsRequest.pb( - evaluation_service.ListEvaluationDatasetsRequest() + pb_message = evaluation_service.GetEvaluationExpectationRequest.pb( + evaluation_service.GetEvaluationExpectationRequest() ) transcode.return_value = { "method": "post", @@ -26291,24 +28573,21 @@ def test_list_evaluation_datasets_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = evaluation_service.ListEvaluationDatasetsResponse.to_json( - evaluation_service.ListEvaluationDatasetsResponse() + return_value = evaluation.EvaluationExpectation.to_json( + evaluation.EvaluationExpectation() ) req.return_value.content = return_value - request = evaluation_service.ListEvaluationDatasetsRequest() + request = evaluation_service.GetEvaluationExpectationRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = evaluation_service.ListEvaluationDatasetsResponse() - post_with_metadata.return_value = ( - evaluation_service.ListEvaluationDatasetsResponse(), - metadata, - ) + post.return_value = evaluation.EvaluationExpectation() + post_with_metadata.return_value = evaluation.EvaluationExpectation(), metadata - client.list_evaluation_datasets( + client.get_evaluation_expectation( request, metadata=[ ("key", "val"), @@ -26321,8 +28600,8 @@ def test_list_evaluation_datasets_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_list_evaluation_runs_rest_bad_request( - request_type=evaluation_service.ListEvaluationRunsRequest, +def test_create_evaluation_expectation_rest_bad_request( + request_type=evaluation_service.CreateEvaluationExpectationRequest, ): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" @@ -26344,30 +28623,113 @@ def test_list_evaluation_runs_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_evaluation_runs(request) + client.create_evaluation_expectation(request) @pytest.mark.parametrize( "request_type", [ - evaluation_service.ListEvaluationRunsRequest, + evaluation_service.CreateEvaluationExpectationRequest, dict, ], ) -def test_list_evaluation_runs_rest_call_success(request_type): +def test_create_evaluation_expectation_rest_call_success(request_type): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = {"parent": "projects/sample1/locations/sample2/apps/sample3"} + request_init["evaluation_expectation"] = { + "llm_criteria": {"prompt": "prompt_value"}, + "name": "name_value", + "display_name": "display_name_value", + "tags": ["tags_value1", "tags_value2"], + "create_time": {"seconds": 751, "nanos": 543}, + "update_time": {}, + "etag": "etag_value", + } + # The version of a generated dependency at test runtime may differ from the version used during generation. + # Delete any fields which are not present in the current runtime dependency + # See https://github.com/googleapis/gapic-generator-python/issues/1748 + + # Determine if the message type is proto-plus or protobuf + test_field = evaluation_service.CreateEvaluationExpectationRequest.meta.fields[ + "evaluation_expectation" + ] + + def get_message_fields(field): + # Given a field which is a message (composite type), return a list with + # all the fields of the message. + # If the field is not a composite type, return an empty list. + message_fields = [] + + if hasattr(field, "message") and field.message: + is_field_type_proto_plus_type = not hasattr(field.message, "DESCRIPTOR") + + if is_field_type_proto_plus_type: + message_fields = field.message.meta.fields.values() + # Add `# pragma: NO COVER` because there may not be any `*_pb2` field types + else: # pragma: NO COVER + message_fields = field.message.DESCRIPTOR.fields + return message_fields + + runtime_nested_fields = [ + (field.name, nested_field.name) + for field in get_message_fields(test_field) + for nested_field in get_message_fields(field) + ] + + subfields_not_in_runtime = [] + + # For each item in the sample request, create a list of sub fields which are not present at runtime + # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime + for field, value in request_init[ + "evaluation_expectation" + ].items(): # pragma: NO COVER + result = None + is_repeated = False + # For repeated fields + if isinstance(value, list) and len(value): + is_repeated = True + result = value[0] + # For fields where the type is another message + if isinstance(value, dict): + result = value + + if result and hasattr(result, "keys"): + for subfield in result.keys(): + if (field, subfield) not in runtime_nested_fields: + subfields_not_in_runtime.append( + { + "field": field, + "subfield": subfield, + "is_repeated": is_repeated, + } + ) + + # Remove fields from the sample request which are not present in the runtime version of the dependency + # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime + for subfield_to_delete in subfields_not_in_runtime: # pragma: NO COVER + field = subfield_to_delete.get("field") + field_repeated = subfield_to_delete.get("is_repeated") + subfield = subfield_to_delete.get("subfield") + if subfield: + if field_repeated: + for i in range(0, len(request_init["evaluation_expectation"][field])): + del request_init["evaluation_expectation"][field][i][subfield] + else: + del request_init["evaluation_expectation"][field][subfield] request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation_service.ListEvaluationRunsResponse( - next_page_token="next_page_token_value", + return_value = evaluation.EvaluationExpectation( + name="name_value", + display_name="display_name_value", + tags=["tags_value"], + etag="etag_value", ) # Wrap the value into a proper Response obj @@ -26375,20 +28737,23 @@ def test_list_evaluation_runs_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation_service.ListEvaluationRunsResponse.pb(return_value) + return_value = evaluation.EvaluationExpectation.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_evaluation_runs(request) + response = client.create_evaluation_expectation(request) # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListEvaluationRunsPager) - assert response.next_page_token == "next_page_token_value" + assert isinstance(response, evaluation.EvaluationExpectation) + assert response.name == "name_value" + assert response.display_name == "display_name_value" + assert response.tags == ["tags_value"] + assert response.etag == "etag_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_evaluation_runs_rest_interceptors(null_interceptor): +def test_create_evaluation_expectation_rest_interceptors(null_interceptor): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -26401,21 +28766,23 @@ def test_list_evaluation_runs_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.EvaluationServiceRestInterceptor, "post_list_evaluation_runs" + transports.EvaluationServiceRestInterceptor, + "post_create_evaluation_expectation", ) as post, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "post_list_evaluation_runs_with_metadata", + "post_create_evaluation_expectation_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.EvaluationServiceRestInterceptor, "pre_list_evaluation_runs" + transports.EvaluationServiceRestInterceptor, + "pre_create_evaluation_expectation", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = evaluation_service.ListEvaluationRunsRequest.pb( - evaluation_service.ListEvaluationRunsRequest() + pb_message = evaluation_service.CreateEvaluationExpectationRequest.pb( + evaluation_service.CreateEvaluationExpectationRequest() ) transcode.return_value = { "method": "post", @@ -26427,24 +28794,21 @@ def test_list_evaluation_runs_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = evaluation_service.ListEvaluationRunsResponse.to_json( - evaluation_service.ListEvaluationRunsResponse() + return_value = evaluation.EvaluationExpectation.to_json( + evaluation.EvaluationExpectation() ) req.return_value.content = return_value - request = evaluation_service.ListEvaluationRunsRequest() + request = evaluation_service.CreateEvaluationExpectationRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = evaluation_service.ListEvaluationRunsResponse() - post_with_metadata.return_value = ( - evaluation_service.ListEvaluationRunsResponse(), - metadata, - ) + post.return_value = evaluation.EvaluationExpectation() + post_with_metadata.return_value = evaluation.EvaluationExpectation(), metadata - client.list_evaluation_runs( + client.create_evaluation_expectation( request, metadata=[ ("key", "val"), @@ -26457,14 +28821,18 @@ def test_list_evaluation_runs_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_list_evaluation_expectations_rest_bad_request( - request_type=evaluation_service.ListEvaluationExpectationsRequest, +def test_update_evaluation_expectation_rest_bad_request( + request_type=evaluation_service.UpdateEvaluationExpectationRequest, ): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2/apps/sample3"} + request_init = { + "evaluation_expectation": { + "name": "projects/sample1/locations/sample2/apps/sample3/evaluationExpectations/sample4" + } + } request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -26480,30 +28848,117 @@ def test_list_evaluation_expectations_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_evaluation_expectations(request) + client.update_evaluation_expectation(request) @pytest.mark.parametrize( "request_type", [ - evaluation_service.ListEvaluationExpectationsRequest, + evaluation_service.UpdateEvaluationExpectationRequest, dict, ], ) -def test_list_evaluation_expectations_rest_call_success(request_type): +def test_update_evaluation_expectation_rest_call_success(request_type): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) - # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2/apps/sample3"} + # send a request that will satisfy transcoding + request_init = { + "evaluation_expectation": { + "name": "projects/sample1/locations/sample2/apps/sample3/evaluationExpectations/sample4" + } + } + request_init["evaluation_expectation"] = { + "llm_criteria": {"prompt": "prompt_value"}, + "name": "projects/sample1/locations/sample2/apps/sample3/evaluationExpectations/sample4", + "display_name": "display_name_value", + "tags": ["tags_value1", "tags_value2"], + "create_time": {"seconds": 751, "nanos": 543}, + "update_time": {}, + "etag": "etag_value", + } + # The version of a generated dependency at test runtime may differ from the version used during generation. + # Delete any fields which are not present in the current runtime dependency + # See https://github.com/googleapis/gapic-generator-python/issues/1748 + + # Determine if the message type is proto-plus or protobuf + test_field = evaluation_service.UpdateEvaluationExpectationRequest.meta.fields[ + "evaluation_expectation" + ] + + def get_message_fields(field): + # Given a field which is a message (composite type), return a list with + # all the fields of the message. + # If the field is not a composite type, return an empty list. + message_fields = [] + + if hasattr(field, "message") and field.message: + is_field_type_proto_plus_type = not hasattr(field.message, "DESCRIPTOR") + + if is_field_type_proto_plus_type: + message_fields = field.message.meta.fields.values() + # Add `# pragma: NO COVER` because there may not be any `*_pb2` field types + else: # pragma: NO COVER + message_fields = field.message.DESCRIPTOR.fields + return message_fields + + runtime_nested_fields = [ + (field.name, nested_field.name) + for field in get_message_fields(test_field) + for nested_field in get_message_fields(field) + ] + + subfields_not_in_runtime = [] + + # For each item in the sample request, create a list of sub fields which are not present at runtime + # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime + for field, value in request_init[ + "evaluation_expectation" + ].items(): # pragma: NO COVER + result = None + is_repeated = False + # For repeated fields + if isinstance(value, list) and len(value): + is_repeated = True + result = value[0] + # For fields where the type is another message + if isinstance(value, dict): + result = value + + if result and hasattr(result, "keys"): + for subfield in result.keys(): + if (field, subfield) not in runtime_nested_fields: + subfields_not_in_runtime.append( + { + "field": field, + "subfield": subfield, + "is_repeated": is_repeated, + } + ) + + # Remove fields from the sample request which are not present in the runtime version of the dependency + # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime + for subfield_to_delete in subfields_not_in_runtime: # pragma: NO COVER + field = subfield_to_delete.get("field") + field_repeated = subfield_to_delete.get("is_repeated") + subfield = subfield_to_delete.get("subfield") + if subfield: + if field_repeated: + for i in range(0, len(request_init["evaluation_expectation"][field])): + del request_init["evaluation_expectation"][field][i][subfield] + else: + del request_init["evaluation_expectation"][field][subfield] request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation_service.ListEvaluationExpectationsResponse( - next_page_token="next_page_token_value", + return_value = evaluation.EvaluationExpectation( + name="name_value", + display_name="display_name_value", + tags=["tags_value"], + etag="etag_value", ) # Wrap the value into a proper Response obj @@ -26511,22 +28966,23 @@ def test_list_evaluation_expectations_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation_service.ListEvaluationExpectationsResponse.pb( - return_value - ) + return_value = evaluation.EvaluationExpectation.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_evaluation_expectations(request) + response = client.update_evaluation_expectation(request) # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListEvaluationExpectationsPager) - assert response.next_page_token == "next_page_token_value" + assert isinstance(response, evaluation.EvaluationExpectation) + assert response.name == "name_value" + assert response.display_name == "display_name_value" + assert response.tags == ["tags_value"] + assert response.etag == "etag_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_evaluation_expectations_rest_interceptors(null_interceptor): +def test_update_evaluation_expectation_rest_interceptors(null_interceptor): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -26540,22 +28996,22 @@ def test_list_evaluation_expectations_rest_interceptors(null_interceptor): mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "post_list_evaluation_expectations", + "post_update_evaluation_expectation", ) as post, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "post_list_evaluation_expectations_with_metadata", + "post_update_evaluation_expectation_with_metadata", ) as post_with_metadata, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "pre_list_evaluation_expectations", + "pre_update_evaluation_expectation", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = evaluation_service.ListEvaluationExpectationsRequest.pb( - evaluation_service.ListEvaluationExpectationsRequest() + pb_message = evaluation_service.UpdateEvaluationExpectationRequest.pb( + evaluation_service.UpdateEvaluationExpectationRequest() ) transcode.return_value = { "method": "post", @@ -26567,24 +29023,21 @@ def test_list_evaluation_expectations_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = evaluation_service.ListEvaluationExpectationsResponse.to_json( - evaluation_service.ListEvaluationExpectationsResponse() + return_value = evaluation.EvaluationExpectation.to_json( + evaluation.EvaluationExpectation() ) req.return_value.content = return_value - request = evaluation_service.ListEvaluationExpectationsRequest() + request = evaluation_service.UpdateEvaluationExpectationRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = evaluation_service.ListEvaluationExpectationsResponse() - post_with_metadata.return_value = ( - evaluation_service.ListEvaluationExpectationsResponse(), - metadata, - ) + post.return_value = evaluation.EvaluationExpectation() + post_with_metadata.return_value = evaluation.EvaluationExpectation(), metadata - client.list_evaluation_expectations( + client.update_evaluation_expectation( request, metadata=[ ("key", "val"), @@ -26597,8 +29050,8 @@ def test_list_evaluation_expectations_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_get_evaluation_expectation_rest_bad_request( - request_type=evaluation_service.GetEvaluationExpectationRequest, +def test_delete_evaluation_expectation_rest_bad_request( + request_type=evaluation_service.DeleteEvaluationExpectationRequest, ): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" @@ -26622,17 +29075,17 @@ def test_get_evaluation_expectation_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_evaluation_expectation(request) + client.delete_evaluation_expectation(request) @pytest.mark.parametrize( "request_type", [ - evaluation_service.GetEvaluationExpectationRequest, + evaluation_service.DeleteEvaluationExpectationRequest, dict, ], ) -def test_get_evaluation_expectation_rest_call_success(request_type): +def test_delete_evaluation_expectation_rest_call_success(request_type): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) @@ -26646,35 +29099,23 @@ def test_get_evaluation_expectation_rest_call_success(request_type): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation.EvaluationExpectation( - name="name_value", - display_name="display_name_value", - tags=["tags_value"], - etag="etag_value", - ) + return_value = None # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = evaluation.EvaluationExpectation.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) + json_return_value = "" response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_evaluation_expectation(request) + response = client.delete_evaluation_expectation(request) # Establish that the response is the type that we expect. - assert isinstance(response, evaluation.EvaluationExpectation) - assert response.name == "name_value" - assert response.display_name == "display_name_value" - assert response.tags == ["tags_value"] - assert response.etag == "etag_value" + assert response is None @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_get_evaluation_expectation_rest_interceptors(null_interceptor): +def test_delete_evaluation_expectation_rest_interceptors(null_interceptor): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -26688,22 +29129,12 @@ def test_get_evaluation_expectation_rest_interceptors(null_interceptor): mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "post_get_evaluation_expectation", - ) as post, - mock.patch.object( - transports.EvaluationServiceRestInterceptor, - "post_get_evaluation_expectation_with_metadata", - ) as post_with_metadata, - mock.patch.object( - transports.EvaluationServiceRestInterceptor, - "pre_get_evaluation_expectation", + "pre_delete_evaluation_expectation", ) as pre, ): pre.assert_not_called() - post.assert_not_called() - post_with_metadata.assert_not_called() - pb_message = evaluation_service.GetEvaluationExpectationRequest.pb( - evaluation_service.GetEvaluationExpectationRequest() + pb_message = evaluation_service.DeleteEvaluationExpectationRequest.pb( + evaluation_service.DeleteEvaluationExpectationRequest() ) transcode.return_value = { "method": "post", @@ -26715,21 +29146,15 @@ def test_get_evaluation_expectation_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = evaluation.EvaluationExpectation.to_json( - evaluation.EvaluationExpectation() - ) - req.return_value.content = return_value - request = evaluation_service.GetEvaluationExpectationRequest() + request = evaluation_service.DeleteEvaluationExpectationRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = evaluation.EvaluationExpectation() - post_with_metadata.return_value = evaluation.EvaluationExpectation(), metadata - client.get_evaluation_expectation( + client.delete_evaluation_expectation( request, metadata=[ ("key", "val"), @@ -26738,12 +29163,10 @@ def test_get_evaluation_expectation_rest_interceptors(null_interceptor): ) pre.assert_called_once() - post.assert_called_once() - post_with_metadata.assert_called_once() -def test_create_evaluation_expectation_rest_bad_request( - request_type=evaluation_service.CreateEvaluationExpectationRequest, +def test_create_scheduled_evaluation_run_rest_bad_request( + request_type=evaluation_service.CreateScheduledEvaluationRunRequest, ): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" @@ -26765,30 +29188,71 @@ def test_create_evaluation_expectation_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.create_evaluation_expectation(request) + client.create_scheduled_evaluation_run(request) @pytest.mark.parametrize( "request_type", [ - evaluation_service.CreateEvaluationExpectationRequest, + evaluation_service.CreateScheduledEvaluationRunRequest, dict, ], ) -def test_create_evaluation_expectation_rest_call_success(request_type): +def test_create_scheduled_evaluation_run_rest_call_success(request_type): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = {"parent": "projects/sample1/locations/sample2/apps/sample3"} - request_init["evaluation_expectation"] = { - "llm_criteria": {"prompt": "prompt_value"}, + request_init["scheduled_evaluation_run"] = { "name": "name_value", "display_name": "display_name_value", - "tags": ["tags_value1", "tags_value2"], - "create_time": {"seconds": 751, "nanos": 543}, + "request": { + "app": "app_value", + "evaluations": ["evaluations_value1", "evaluations_value2"], + "evaluation_dataset": "evaluation_dataset_value", + "display_name": "display_name_value", + "app_version": "app_version_value", + "config": { + "input_audio_config": { + "audio_encoding": 1, + "sample_rate_hertz": 1817, + "noise_suppression_level": "noise_suppression_level_value", + }, + "output_audio_config": {"audio_encoding": 1, "sample_rate_hertz": 1817}, + "evaluation_channel": 1, + "tool_call_behaviour": 1, + }, + "run_count": 989, + "persona_run_configs": [{"persona": "persona_value", "task_count": 1083}], + "optimization_config": { + "generate_loss_report": True, + "assistant_session": "assistant_session_value", + "report_summary": "report_summary_value", + "should_suggest_fix": True, + "status": 1, + "error_message": "error_message_value", + "loss_report": {"fields": {}}, + }, + "scheduled_evaluation_run": "scheduled_evaluation_run_value", + "golden_run_method": 1, + "generate_latency_report": True, + }, + "description": "description_value", + "scheduling_config": { + "frequency": 1, + "start_time": {"seconds": 751, "nanos": 543}, + "days_of_week": [1265, 1266], + }, + "active": True, + "last_completed_run": "last_completed_run_value", + "total_executions": 1738, + "next_scheduled_execution_time": {}, + "create_time": {}, + "created_by": "created_by_value", "update_time": {}, + "last_updated_by": "last_updated_by_value", "etag": "etag_value", } # The version of a generated dependency at test runtime may differ from the version used during generation. @@ -26796,8 +29260,8 @@ def test_create_evaluation_expectation_rest_call_success(request_type): # See https://github.com/googleapis/gapic-generator-python/issues/1748 # Determine if the message type is proto-plus or protobuf - test_field = evaluation_service.CreateEvaluationExpectationRequest.meta.fields[ - "evaluation_expectation" + test_field = evaluation_service.CreateScheduledEvaluationRunRequest.meta.fields[ + "scheduled_evaluation_run" ] def get_message_fields(field): @@ -26827,7 +29291,7 @@ def get_message_fields(field): # For each item in the sample request, create a list of sub fields which are not present at runtime # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime for field, value in request_init[ - "evaluation_expectation" + "scheduled_evaluation_run" ].items(): # pragma: NO COVER result = None is_repeated = False @@ -26858,19 +29322,24 @@ def get_message_fields(field): subfield = subfield_to_delete.get("subfield") if subfield: if field_repeated: - for i in range(0, len(request_init["evaluation_expectation"][field])): - del request_init["evaluation_expectation"][field][i][subfield] + for i in range(0, len(request_init["scheduled_evaluation_run"][field])): + del request_init["scheduled_evaluation_run"][field][i][subfield] else: - del request_init["evaluation_expectation"][field][subfield] + del request_init["scheduled_evaluation_run"][field][subfield] request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation.EvaluationExpectation( + return_value = evaluation.ScheduledEvaluationRun( name="name_value", display_name="display_name_value", - tags=["tags_value"], + description="description_value", + active=True, + last_completed_run="last_completed_run_value", + total_executions=1738, + created_by="created_by_value", + last_updated_by="last_updated_by_value", etag="etag_value", ) @@ -26879,23 +29348,28 @@ def get_message_fields(field): response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation.EvaluationExpectation.pb(return_value) + return_value = evaluation.ScheduledEvaluationRun.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.create_evaluation_expectation(request) + response = client.create_scheduled_evaluation_run(request) # Establish that the response is the type that we expect. - assert isinstance(response, evaluation.EvaluationExpectation) + assert isinstance(response, evaluation.ScheduledEvaluationRun) assert response.name == "name_value" assert response.display_name == "display_name_value" - assert response.tags == ["tags_value"] + assert response.description == "description_value" + assert response.active is True + assert response.last_completed_run == "last_completed_run_value" + assert response.total_executions == 1738 + assert response.created_by == "created_by_value" + assert response.last_updated_by == "last_updated_by_value" assert response.etag == "etag_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_create_evaluation_expectation_rest_interceptors(null_interceptor): +def test_create_scheduled_evaluation_run_rest_interceptors(null_interceptor): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -26909,22 +29383,22 @@ def test_create_evaluation_expectation_rest_interceptors(null_interceptor): mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "post_create_evaluation_expectation", + "post_create_scheduled_evaluation_run", ) as post, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "post_create_evaluation_expectation_with_metadata", + "post_create_scheduled_evaluation_run_with_metadata", ) as post_with_metadata, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "pre_create_evaluation_expectation", + "pre_create_scheduled_evaluation_run", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = evaluation_service.CreateEvaluationExpectationRequest.pb( - evaluation_service.CreateEvaluationExpectationRequest() + pb_message = evaluation_service.CreateScheduledEvaluationRunRequest.pb( + evaluation_service.CreateScheduledEvaluationRunRequest() ) transcode.return_value = { "method": "post", @@ -26936,21 +29410,21 @@ def test_create_evaluation_expectation_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = evaluation.EvaluationExpectation.to_json( - evaluation.EvaluationExpectation() + return_value = evaluation.ScheduledEvaluationRun.to_json( + evaluation.ScheduledEvaluationRun() ) req.return_value.content = return_value - request = evaluation_service.CreateEvaluationExpectationRequest() + request = evaluation_service.CreateScheduledEvaluationRunRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = evaluation.EvaluationExpectation() - post_with_metadata.return_value = evaluation.EvaluationExpectation(), metadata + post.return_value = evaluation.ScheduledEvaluationRun() + post_with_metadata.return_value = evaluation.ScheduledEvaluationRun(), metadata - client.create_evaluation_expectation( + client.create_scheduled_evaluation_run( request, metadata=[ ("key", "val"), @@ -26963,17 +29437,15 @@ def test_create_evaluation_expectation_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_update_evaluation_expectation_rest_bad_request( - request_type=evaluation_service.UpdateEvaluationExpectationRequest, +def test_get_scheduled_evaluation_run_rest_bad_request( + request_type=evaluation_service.GetScheduledEvaluationRunRequest, ): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "evaluation_expectation": { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluationExpectations/sample4" - } + "name": "projects/sample1/locations/sample2/apps/sample3/scheduledEvaluationRuns/sample4" } request = request_type(**request_init) @@ -26990,116 +29462,39 @@ def test_update_evaluation_expectation_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.update_evaluation_expectation(request) + client.get_scheduled_evaluation_run(request) @pytest.mark.parametrize( "request_type", [ - evaluation_service.UpdateEvaluationExpectationRequest, + evaluation_service.GetScheduledEvaluationRunRequest, dict, ], ) -def test_update_evaluation_expectation_rest_call_success(request_type): +def test_get_scheduled_evaluation_run_rest_call_success(request_type): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "evaluation_expectation": { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluationExpectations/sample4" - } - } - request_init["evaluation_expectation"] = { - "llm_criteria": {"prompt": "prompt_value"}, - "name": "projects/sample1/locations/sample2/apps/sample3/evaluationExpectations/sample4", - "display_name": "display_name_value", - "tags": ["tags_value1", "tags_value2"], - "create_time": {"seconds": 751, "nanos": 543}, - "update_time": {}, - "etag": "etag_value", + "name": "projects/sample1/locations/sample2/apps/sample3/scheduledEvaluationRuns/sample4" } - # The version of a generated dependency at test runtime may differ from the version used during generation. - # Delete any fields which are not present in the current runtime dependency - # See https://github.com/googleapis/gapic-generator-python/issues/1748 - - # Determine if the message type is proto-plus or protobuf - test_field = evaluation_service.UpdateEvaluationExpectationRequest.meta.fields[ - "evaluation_expectation" - ] - - def get_message_fields(field): - # Given a field which is a message (composite type), return a list with - # all the fields of the message. - # If the field is not a composite type, return an empty list. - message_fields = [] - - if hasattr(field, "message") and field.message: - is_field_type_proto_plus_type = not hasattr(field.message, "DESCRIPTOR") - - if is_field_type_proto_plus_type: - message_fields = field.message.meta.fields.values() - # Add `# pragma: NO COVER` because there may not be any `*_pb2` field types - else: # pragma: NO COVER - message_fields = field.message.DESCRIPTOR.fields - return message_fields - - runtime_nested_fields = [ - (field.name, nested_field.name) - for field in get_message_fields(test_field) - for nested_field in get_message_fields(field) - ] - - subfields_not_in_runtime = [] - - # For each item in the sample request, create a list of sub fields which are not present at runtime - # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime - for field, value in request_init[ - "evaluation_expectation" - ].items(): # pragma: NO COVER - result = None - is_repeated = False - # For repeated fields - if isinstance(value, list) and len(value): - is_repeated = True - result = value[0] - # For fields where the type is another message - if isinstance(value, dict): - result = value - - if result and hasattr(result, "keys"): - for subfield in result.keys(): - if (field, subfield) not in runtime_nested_fields: - subfields_not_in_runtime.append( - { - "field": field, - "subfield": subfield, - "is_repeated": is_repeated, - } - ) - - # Remove fields from the sample request which are not present in the runtime version of the dependency - # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime - for subfield_to_delete in subfields_not_in_runtime: # pragma: NO COVER - field = subfield_to_delete.get("field") - field_repeated = subfield_to_delete.get("is_repeated") - subfield = subfield_to_delete.get("subfield") - if subfield: - if field_repeated: - for i in range(0, len(request_init["evaluation_expectation"][field])): - del request_init["evaluation_expectation"][field][i][subfield] - else: - del request_init["evaluation_expectation"][field][subfield] request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation.EvaluationExpectation( + return_value = evaluation.ScheduledEvaluationRun( name="name_value", display_name="display_name_value", - tags=["tags_value"], + description="description_value", + active=True, + last_completed_run="last_completed_run_value", + total_executions=1738, + created_by="created_by_value", + last_updated_by="last_updated_by_value", etag="etag_value", ) @@ -27108,23 +29503,28 @@ def get_message_fields(field): response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation.EvaluationExpectation.pb(return_value) + return_value = evaluation.ScheduledEvaluationRun.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.update_evaluation_expectation(request) + response = client.get_scheduled_evaluation_run(request) # Establish that the response is the type that we expect. - assert isinstance(response, evaluation.EvaluationExpectation) + assert isinstance(response, evaluation.ScheduledEvaluationRun) assert response.name == "name_value" assert response.display_name == "display_name_value" - assert response.tags == ["tags_value"] + assert response.description == "description_value" + assert response.active is True + assert response.last_completed_run == "last_completed_run_value" + assert response.total_executions == 1738 + assert response.created_by == "created_by_value" + assert response.last_updated_by == "last_updated_by_value" assert response.etag == "etag_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_update_evaluation_expectation_rest_interceptors(null_interceptor): +def test_get_scheduled_evaluation_run_rest_interceptors(null_interceptor): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -27138,22 +29538,22 @@ def test_update_evaluation_expectation_rest_interceptors(null_interceptor): mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "post_update_evaluation_expectation", + "post_get_scheduled_evaluation_run", ) as post, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "post_update_evaluation_expectation_with_metadata", + "post_get_scheduled_evaluation_run_with_metadata", ) as post_with_metadata, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "pre_update_evaluation_expectation", + "pre_get_scheduled_evaluation_run", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = evaluation_service.UpdateEvaluationExpectationRequest.pb( - evaluation_service.UpdateEvaluationExpectationRequest() + pb_message = evaluation_service.GetScheduledEvaluationRunRequest.pb( + evaluation_service.GetScheduledEvaluationRunRequest() ) transcode.return_value = { "method": "post", @@ -27165,21 +29565,21 @@ def test_update_evaluation_expectation_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = evaluation.EvaluationExpectation.to_json( - evaluation.EvaluationExpectation() + return_value = evaluation.ScheduledEvaluationRun.to_json( + evaluation.ScheduledEvaluationRun() ) req.return_value.content = return_value - request = evaluation_service.UpdateEvaluationExpectationRequest() + request = evaluation_service.GetScheduledEvaluationRunRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = evaluation.EvaluationExpectation() - post_with_metadata.return_value = evaluation.EvaluationExpectation(), metadata + post.return_value = evaluation.ScheduledEvaluationRun() + post_with_metadata.return_value = evaluation.ScheduledEvaluationRun(), metadata - client.update_evaluation_expectation( + client.get_scheduled_evaluation_run( request, metadata=[ ("key", "val"), @@ -27192,16 +29592,14 @@ def test_update_evaluation_expectation_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_delete_evaluation_expectation_rest_bad_request( - request_type=evaluation_service.DeleteEvaluationExpectationRequest, +def test_list_scheduled_evaluation_runs_rest_bad_request( + request_type=evaluation_service.ListScheduledEvaluationRunsRequest, ): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluationExpectations/sample4" - } + request_init = {"parent": "projects/sample1/locations/sample2/apps/sample3"} request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -27217,47 +29615,53 @@ def test_delete_evaluation_expectation_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.delete_evaluation_expectation(request) + client.list_scheduled_evaluation_runs(request) @pytest.mark.parametrize( "request_type", [ - evaluation_service.DeleteEvaluationExpectationRequest, + evaluation_service.ListScheduledEvaluationRunsRequest, dict, ], ) -def test_delete_evaluation_expectation_rest_call_success(request_type): +def test_list_scheduled_evaluation_runs_rest_call_success(request_type): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "name": "projects/sample1/locations/sample2/apps/sample3/evaluationExpectations/sample4" - } + request_init = {"parent": "projects/sample1/locations/sample2/apps/sample3"} request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = None + return_value = evaluation_service.ListScheduledEvaluationRunsResponse( + next_page_token="next_page_token_value", + ) # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 - json_return_value = "" + + # Convert return value to protobuf type + return_value = evaluation_service.ListScheduledEvaluationRunsResponse.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.delete_evaluation_expectation(request) + response = client.list_scheduled_evaluation_runs(request) # Establish that the response is the type that we expect. - assert response is None + assert isinstance(response, pagers.ListScheduledEvaluationRunsPager) + assert response.next_page_token == "next_page_token_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_delete_evaluation_expectation_rest_interceptors(null_interceptor): +def test_list_scheduled_evaluation_runs_rest_interceptors(null_interceptor): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -27271,12 +29675,22 @@ def test_delete_evaluation_expectation_rest_interceptors(null_interceptor): mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "pre_delete_evaluation_expectation", + "post_list_scheduled_evaluation_runs", + ) as post, + mock.patch.object( + transports.EvaluationServiceRestInterceptor, + "post_list_scheduled_evaluation_runs_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.EvaluationServiceRestInterceptor, + "pre_list_scheduled_evaluation_runs", ) as pre, ): pre.assert_not_called() - pb_message = evaluation_service.DeleteEvaluationExpectationRequest.pb( - evaluation_service.DeleteEvaluationExpectationRequest() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = evaluation_service.ListScheduledEvaluationRunsRequest.pb( + evaluation_service.ListScheduledEvaluationRunsRequest() ) transcode.return_value = { "method": "post", @@ -27288,15 +29702,24 @@ def test_delete_evaluation_expectation_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = evaluation_service.ListScheduledEvaluationRunsResponse.to_json( + evaluation_service.ListScheduledEvaluationRunsResponse() + ) + req.return_value.content = return_value - request = evaluation_service.DeleteEvaluationExpectationRequest() + request = evaluation_service.ListScheduledEvaluationRunsRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata + post.return_value = evaluation_service.ListScheduledEvaluationRunsResponse() + post_with_metadata.return_value = ( + evaluation_service.ListScheduledEvaluationRunsResponse(), + metadata, + ) - client.delete_evaluation_expectation( + client.list_scheduled_evaluation_runs( request, metadata=[ ("key", "val"), @@ -27305,16 +29728,22 @@ def test_delete_evaluation_expectation_rest_interceptors(null_interceptor): ) pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() -def test_create_scheduled_evaluation_run_rest_bad_request( - request_type=evaluation_service.CreateScheduledEvaluationRunRequest, +def test_update_scheduled_evaluation_run_rest_bad_request( + request_type=evaluation_service.UpdateScheduledEvaluationRunRequest, ): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2/apps/sample3"} + request_init = { + "scheduled_evaluation_run": { + "name": "projects/sample1/locations/sample2/apps/sample3/scheduledEvaluationRuns/sample4" + } + } request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -27330,25 +29759,29 @@ def test_create_scheduled_evaluation_run_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.create_scheduled_evaluation_run(request) + client.update_scheduled_evaluation_run(request) @pytest.mark.parametrize( "request_type", [ - evaluation_service.CreateScheduledEvaluationRunRequest, + evaluation_service.UpdateScheduledEvaluationRunRequest, dict, ], ) -def test_create_scheduled_evaluation_run_rest_call_success(request_type): +def test_update_scheduled_evaluation_run_rest_call_success(request_type): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2/apps/sample3"} + request_init = { + "scheduled_evaluation_run": { + "name": "projects/sample1/locations/sample2/apps/sample3/scheduledEvaluationRuns/sample4" + } + } request_init["scheduled_evaluation_run"] = { - "name": "name_value", + "name": "projects/sample1/locations/sample2/apps/sample3/scheduledEvaluationRuns/sample4", "display_name": "display_name_value", "request": { "app": "app_value", @@ -27402,7 +29835,7 @@ def test_create_scheduled_evaluation_run_rest_call_success(request_type): # See https://github.com/googleapis/gapic-generator-python/issues/1748 # Determine if the message type is proto-plus or protobuf - test_field = evaluation_service.CreateScheduledEvaluationRunRequest.meta.fields[ + test_field = evaluation_service.UpdateScheduledEvaluationRunRequest.meta.fields[ "scheduled_evaluation_run" ] @@ -27495,7 +29928,7 @@ def get_message_fields(field): response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.create_scheduled_evaluation_run(request) + response = client.update_scheduled_evaluation_run(request) # Establish that the response is the type that we expect. assert isinstance(response, evaluation.ScheduledEvaluationRun) @@ -27511,7 +29944,7 @@ def get_message_fields(field): @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_create_scheduled_evaluation_run_rest_interceptors(null_interceptor): +def test_update_scheduled_evaluation_run_rest_interceptors(null_interceptor): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -27525,22 +29958,22 @@ def test_create_scheduled_evaluation_run_rest_interceptors(null_interceptor): mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "post_create_scheduled_evaluation_run", + "post_update_scheduled_evaluation_run", ) as post, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "post_create_scheduled_evaluation_run_with_metadata", + "post_update_scheduled_evaluation_run_with_metadata", ) as post_with_metadata, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "pre_create_scheduled_evaluation_run", + "pre_update_scheduled_evaluation_run", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = evaluation_service.CreateScheduledEvaluationRunRequest.pb( - evaluation_service.CreateScheduledEvaluationRunRequest() + pb_message = evaluation_service.UpdateScheduledEvaluationRunRequest.pb( + evaluation_service.UpdateScheduledEvaluationRunRequest() ) transcode.return_value = { "method": "post", @@ -27557,7 +29990,7 @@ def test_create_scheduled_evaluation_run_rest_interceptors(null_interceptor): ) req.return_value.content = return_value - request = evaluation_service.CreateScheduledEvaluationRunRequest() + request = evaluation_service.UpdateScheduledEvaluationRunRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), @@ -27566,7 +29999,7 @@ def test_create_scheduled_evaluation_run_rest_interceptors(null_interceptor): post.return_value = evaluation.ScheduledEvaluationRun() post_with_metadata.return_value = evaluation.ScheduledEvaluationRun(), metadata - client.create_scheduled_evaluation_run( + client.update_scheduled_evaluation_run( request, metadata=[ ("key", "val"), @@ -27579,8 +30012,8 @@ def test_create_scheduled_evaluation_run_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_get_scheduled_evaluation_run_rest_bad_request( - request_type=evaluation_service.GetScheduledEvaluationRunRequest, +def test_delete_scheduled_evaluation_run_rest_bad_request( + request_type=evaluation_service.DeleteScheduledEvaluationRunRequest, ): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" @@ -27604,17 +30037,17 @@ def test_get_scheduled_evaluation_run_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_scheduled_evaluation_run(request) + client.delete_scheduled_evaluation_run(request) @pytest.mark.parametrize( "request_type", [ - evaluation_service.GetScheduledEvaluationRunRequest, + evaluation_service.DeleteScheduledEvaluationRunRequest, dict, ], ) -def test_get_scheduled_evaluation_run_rest_call_success(request_type): +def test_delete_scheduled_evaluation_run_rest_call_success(request_type): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) @@ -27628,45 +30061,23 @@ def test_get_scheduled_evaluation_run_rest_call_success(request_type): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation.ScheduledEvaluationRun( - name="name_value", - display_name="display_name_value", - description="description_value", - active=True, - last_completed_run="last_completed_run_value", - total_executions=1738, - created_by="created_by_value", - last_updated_by="last_updated_by_value", - etag="etag_value", - ) + return_value = None # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = evaluation.ScheduledEvaluationRun.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) + json_return_value = "" response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_scheduled_evaluation_run(request) + response = client.delete_scheduled_evaluation_run(request) # Establish that the response is the type that we expect. - assert isinstance(response, evaluation.ScheduledEvaluationRun) - assert response.name == "name_value" - assert response.display_name == "display_name_value" - assert response.description == "description_value" - assert response.active is True - assert response.last_completed_run == "last_completed_run_value" - assert response.total_executions == 1738 - assert response.created_by == "created_by_value" - assert response.last_updated_by == "last_updated_by_value" - assert response.etag == "etag_value" + assert response is None @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_get_scheduled_evaluation_run_rest_interceptors(null_interceptor): +def test_delete_scheduled_evaluation_run_rest_interceptors(null_interceptor): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -27680,22 +30091,12 @@ def test_get_scheduled_evaluation_run_rest_interceptors(null_interceptor): mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "post_get_scheduled_evaluation_run", - ) as post, - mock.patch.object( - transports.EvaluationServiceRestInterceptor, - "post_get_scheduled_evaluation_run_with_metadata", - ) as post_with_metadata, - mock.patch.object( - transports.EvaluationServiceRestInterceptor, - "pre_get_scheduled_evaluation_run", + "pre_delete_scheduled_evaluation_run", ) as pre, ): pre.assert_not_called() - post.assert_not_called() - post_with_metadata.assert_not_called() - pb_message = evaluation_service.GetScheduledEvaluationRunRequest.pb( - evaluation_service.GetScheduledEvaluationRunRequest() + pb_message = evaluation_service.DeleteScheduledEvaluationRunRequest.pb( + evaluation_service.DeleteScheduledEvaluationRunRequest() ) transcode.return_value = { "method": "post", @@ -27707,21 +30108,15 @@ def test_get_scheduled_evaluation_run_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = evaluation.ScheduledEvaluationRun.to_json( - evaluation.ScheduledEvaluationRun() - ) - req.return_value.content = return_value - request = evaluation_service.GetScheduledEvaluationRunRequest() + request = evaluation_service.DeleteScheduledEvaluationRunRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = evaluation.ScheduledEvaluationRun() - post_with_metadata.return_value = evaluation.ScheduledEvaluationRun(), metadata - client.get_scheduled_evaluation_run( + client.delete_scheduled_evaluation_run( request, metadata=[ ("key", "val"), @@ -27730,18 +30125,16 @@ def test_get_scheduled_evaluation_run_rest_interceptors(null_interceptor): ) pre.assert_called_once() - post.assert_called_once() - post_with_metadata.assert_called_once() -def test_list_scheduled_evaluation_runs_rest_bad_request( - request_type=evaluation_service.ListScheduledEvaluationRunsRequest, +def test_test_persona_voice_rest_bad_request( + request_type=evaluation_service.TestPersonaVoiceRequest, ): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2/apps/sample3"} + request_init = {"app": "projects/sample1/locations/sample2/apps/sample3"} request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -27757,30 +30150,30 @@ def test_list_scheduled_evaluation_runs_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_scheduled_evaluation_runs(request) + client.test_persona_voice(request) @pytest.mark.parametrize( "request_type", [ - evaluation_service.ListScheduledEvaluationRunsRequest, + evaluation_service.TestPersonaVoiceRequest, dict, ], ) -def test_list_scheduled_evaluation_runs_rest_call_success(request_type): +def test_test_persona_voice_rest_call_success(request_type): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2/apps/sample3"} + request_init = {"app": "projects/sample1/locations/sample2/apps/sample3"} request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation_service.ListScheduledEvaluationRunsResponse( - next_page_token="next_page_token_value", + return_value = evaluation_service.TestPersonaVoiceResponse( + audio=b"audio_blob", ) # Wrap the value into a proper Response obj @@ -27788,22 +30181,20 @@ def test_list_scheduled_evaluation_runs_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = evaluation_service.ListScheduledEvaluationRunsResponse.pb( - return_value - ) + return_value = evaluation_service.TestPersonaVoiceResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_scheduled_evaluation_runs(request) + response = client.test_persona_voice(request) # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListScheduledEvaluationRunsPager) - assert response.next_page_token == "next_page_token_value" + assert isinstance(response, evaluation_service.TestPersonaVoiceResponse) + assert response.audio == b"audio_blob" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_scheduled_evaluation_runs_rest_interceptors(null_interceptor): +def test_test_persona_voice_rest_interceptors(null_interceptor): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -27816,23 +30207,21 @@ def test_list_scheduled_evaluation_runs_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.EvaluationServiceRestInterceptor, - "post_list_scheduled_evaluation_runs", + transports.EvaluationServiceRestInterceptor, "post_test_persona_voice" ) as post, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "post_list_scheduled_evaluation_runs_with_metadata", + "post_test_persona_voice_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.EvaluationServiceRestInterceptor, - "pre_list_scheduled_evaluation_runs", + transports.EvaluationServiceRestInterceptor, "pre_test_persona_voice" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = evaluation_service.ListScheduledEvaluationRunsRequest.pb( - evaluation_service.ListScheduledEvaluationRunsRequest() + pb_message = evaluation_service.TestPersonaVoiceRequest.pb( + evaluation_service.TestPersonaVoiceRequest() ) transcode.return_value = { "method": "post", @@ -27844,24 +30233,24 @@ def test_list_scheduled_evaluation_runs_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = evaluation_service.ListScheduledEvaluationRunsResponse.to_json( - evaluation_service.ListScheduledEvaluationRunsResponse() + return_value = evaluation_service.TestPersonaVoiceResponse.to_json( + evaluation_service.TestPersonaVoiceResponse() ) req.return_value.content = return_value - request = evaluation_service.ListScheduledEvaluationRunsRequest() + request = evaluation_service.TestPersonaVoiceRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = evaluation_service.ListScheduledEvaluationRunsResponse() + post.return_value = evaluation_service.TestPersonaVoiceResponse() post_with_metadata.return_value = ( - evaluation_service.ListScheduledEvaluationRunsResponse(), + evaluation_service.TestPersonaVoiceResponse(), metadata, ) - client.list_scheduled_evaluation_runs( + client.test_persona_voice( request, metadata=[ ("key", "val"), @@ -27874,18 +30263,14 @@ def test_list_scheduled_evaluation_runs_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_update_scheduled_evaluation_run_rest_bad_request( - request_type=evaluation_service.UpdateScheduledEvaluationRunRequest, +def test_export_evaluations_rest_bad_request( + request_type=evaluation_service.ExportEvaluationsRequest, ): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "scheduled_evaluation_run": { - "name": "projects/sample1/locations/sample2/apps/sample3/scheduledEvaluationRuns/sample4" - } - } + request_init = {"parent": "projects/sample1/locations/sample2/apps/sample3"} request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -27897,196 +30282,49 @@ def test_update_scheduled_evaluation_run_rest_bad_request( response_value = mock.Mock() json_return_value = "" response_value.json = mock.Mock(return_value={}) - response_value.status_code = 400 - response_value.request = mock.Mock() - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.update_scheduled_evaluation_run(request) - - -@pytest.mark.parametrize( - "request_type", - [ - evaluation_service.UpdateScheduledEvaluationRunRequest, - dict, - ], -) -def test_update_scheduled_evaluation_run_rest_call_success(request_type): - client = EvaluationServiceClient( - credentials=ga_credentials.AnonymousCredentials(), transport="rest" - ) - - # send a request that will satisfy transcoding - request_init = { - "scheduled_evaluation_run": { - "name": "projects/sample1/locations/sample2/apps/sample3/scheduledEvaluationRuns/sample4" - } - } - request_init["scheduled_evaluation_run"] = { - "name": "projects/sample1/locations/sample2/apps/sample3/scheduledEvaluationRuns/sample4", - "display_name": "display_name_value", - "request": { - "app": "app_value", - "evaluations": ["evaluations_value1", "evaluations_value2"], - "evaluation_dataset": "evaluation_dataset_value", - "display_name": "display_name_value", - "app_version": "app_version_value", - "config": { - "input_audio_config": { - "audio_encoding": 1, - "sample_rate_hertz": 1817, - "noise_suppression_level": "noise_suppression_level_value", - }, - "output_audio_config": {"audio_encoding": 1, "sample_rate_hertz": 1817}, - "evaluation_channel": 1, - "tool_call_behaviour": 1, - }, - "run_count": 989, - "persona_run_configs": [{"persona": "persona_value", "task_count": 1083}], - "optimization_config": { - "generate_loss_report": True, - "assistant_session": "assistant_session_value", - "report_summary": "report_summary_value", - "should_suggest_fix": True, - "status": 1, - "error_message": "error_message_value", - "loss_report": {"fields": {}}, - }, - "scheduled_evaluation_run": "scheduled_evaluation_run_value", - "golden_run_method": 1, - "generate_latency_report": True, - }, - "description": "description_value", - "scheduling_config": { - "frequency": 1, - "start_time": {"seconds": 751, "nanos": 543}, - "days_of_week": [1265, 1266], - }, - "active": True, - "last_completed_run": "last_completed_run_value", - "total_executions": 1738, - "next_scheduled_execution_time": {}, - "create_time": {}, - "created_by": "created_by_value", - "update_time": {}, - "last_updated_by": "last_updated_by_value", - "etag": "etag_value", - } - # The version of a generated dependency at test runtime may differ from the version used during generation. - # Delete any fields which are not present in the current runtime dependency - # See https://github.com/googleapis/gapic-generator-python/issues/1748 - - # Determine if the message type is proto-plus or protobuf - test_field = evaluation_service.UpdateScheduledEvaluationRunRequest.meta.fields[ - "scheduled_evaluation_run" - ] - - def get_message_fields(field): - # Given a field which is a message (composite type), return a list with - # all the fields of the message. - # If the field is not a composite type, return an empty list. - message_fields = [] - - if hasattr(field, "message") and field.message: - is_field_type_proto_plus_type = not hasattr(field.message, "DESCRIPTOR") - - if is_field_type_proto_plus_type: - message_fields = field.message.meta.fields.values() - # Add `# pragma: NO COVER` because there may not be any `*_pb2` field types - else: # pragma: NO COVER - message_fields = field.message.DESCRIPTOR.fields - return message_fields - - runtime_nested_fields = [ - (field.name, nested_field.name) - for field in get_message_fields(test_field) - for nested_field in get_message_fields(field) - ] - - subfields_not_in_runtime = [] - - # For each item in the sample request, create a list of sub fields which are not present at runtime - # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime - for field, value in request_init[ - "scheduled_evaluation_run" - ].items(): # pragma: NO COVER - result = None - is_repeated = False - # For repeated fields - if isinstance(value, list) and len(value): - is_repeated = True - result = value[0] - # For fields where the type is another message - if isinstance(value, dict): - result = value + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.export_evaluations(request) - if result and hasattr(result, "keys"): - for subfield in result.keys(): - if (field, subfield) not in runtime_nested_fields: - subfields_not_in_runtime.append( - { - "field": field, - "subfield": subfield, - "is_repeated": is_repeated, - } - ) - # Remove fields from the sample request which are not present in the runtime version of the dependency - # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime - for subfield_to_delete in subfields_not_in_runtime: # pragma: NO COVER - field = subfield_to_delete.get("field") - field_repeated = subfield_to_delete.get("is_repeated") - subfield = subfield_to_delete.get("subfield") - if subfield: - if field_repeated: - for i in range(0, len(request_init["scheduled_evaluation_run"][field])): - del request_init["scheduled_evaluation_run"][field][i][subfield] - else: - del request_init["scheduled_evaluation_run"][field][subfield] +@pytest.mark.parametrize( + "request_type", + [ + evaluation_service.ExportEvaluationsRequest, + dict, + ], +) +def test_export_evaluations_rest_call_success(request_type): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + # send a request that will satisfy transcoding + request_init = {"parent": "projects/sample1/locations/sample2/apps/sample3"} request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation.ScheduledEvaluationRun( - name="name_value", - display_name="display_name_value", - description="description_value", - active=True, - last_completed_run="last_completed_run_value", - total_executions=1738, - created_by="created_by_value", - last_updated_by="last_updated_by_value", - etag="etag_value", - ) + return_value = operations_pb2.Operation(name="operations/spam") # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = evaluation.ScheduledEvaluationRun.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.update_scheduled_evaluation_run(request) + response = client.export_evaluations(request) # Establish that the response is the type that we expect. - assert isinstance(response, evaluation.ScheduledEvaluationRun) - assert response.name == "name_value" - assert response.display_name == "display_name_value" - assert response.description == "description_value" - assert response.active is True - assert response.last_completed_run == "last_completed_run_value" - assert response.total_executions == 1738 - assert response.created_by == "created_by_value" - assert response.last_updated_by == "last_updated_by_value" - assert response.etag == "etag_value" + json_return_value = json_format.MessageToJson(return_value) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_update_scheduled_evaluation_run_rest_interceptors(null_interceptor): +def test_export_evaluations_rest_interceptors(null_interceptor): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -28098,24 +30336,23 @@ def test_update_scheduled_evaluation_run_rest_interceptors(null_interceptor): with ( mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.EvaluationServiceRestInterceptor, - "post_update_scheduled_evaluation_run", + transports.EvaluationServiceRestInterceptor, "post_export_evaluations" ) as post, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "post_update_scheduled_evaluation_run_with_metadata", + "post_export_evaluations_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.EvaluationServiceRestInterceptor, - "pre_update_scheduled_evaluation_run", + transports.EvaluationServiceRestInterceptor, "pre_export_evaluations" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = evaluation_service.UpdateScheduledEvaluationRunRequest.pb( - evaluation_service.UpdateScheduledEvaluationRunRequest() + pb_message = evaluation_service.ExportEvaluationsRequest.pb( + evaluation_service.ExportEvaluationsRequest() ) transcode.return_value = { "method": "post", @@ -28127,21 +30364,19 @@ def test_update_scheduled_evaluation_run_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = evaluation.ScheduledEvaluationRun.to_json( - evaluation.ScheduledEvaluationRun() - ) + return_value = json_format.MessageToJson(operations_pb2.Operation()) req.return_value.content = return_value - request = evaluation_service.UpdateScheduledEvaluationRunRequest() + request = evaluation_service.ExportEvaluationsRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = evaluation.ScheduledEvaluationRun() - post_with_metadata.return_value = evaluation.ScheduledEvaluationRun(), metadata + post.return_value = operations_pb2.Operation() + post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.update_scheduled_evaluation_run( + client.export_evaluations( request, metadata=[ ("key", "val"), @@ -28154,16 +30389,14 @@ def test_update_scheduled_evaluation_run_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_delete_scheduled_evaluation_run_rest_bad_request( - request_type=evaluation_service.DeleteScheduledEvaluationRunRequest, +def test_export_evaluation_runs_rest_bad_request( + request_type=evaluation_service.ExportEvaluationRunsRequest, ): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "name": "projects/sample1/locations/sample2/apps/sample3/scheduledEvaluationRuns/sample4" - } + request_init = {"parent": "projects/sample1/locations/sample2/apps/sample3"} request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -28179,47 +30412,45 @@ def test_delete_scheduled_evaluation_run_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.delete_scheduled_evaluation_run(request) + client.export_evaluation_runs(request) @pytest.mark.parametrize( "request_type", [ - evaluation_service.DeleteScheduledEvaluationRunRequest, + evaluation_service.ExportEvaluationRunsRequest, dict, ], ) -def test_delete_scheduled_evaluation_run_rest_call_success(request_type): +def test_export_evaluation_runs_rest_call_success(request_type): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "name": "projects/sample1/locations/sample2/apps/sample3/scheduledEvaluationRuns/sample4" - } + request_init = {"parent": "projects/sample1/locations/sample2/apps/sample3"} request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = None + return_value = operations_pb2.Operation(name="operations/spam") # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 - json_return_value = "" + json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.delete_scheduled_evaluation_run(request) + response = client.export_evaluation_runs(request) # Establish that the response is the type that we expect. - assert response is None + json_return_value = json_format.MessageToJson(return_value) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_delete_scheduled_evaluation_run_rest_interceptors(null_interceptor): +def test_export_evaluation_runs_rest_interceptors(null_interceptor): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -28231,14 +30462,23 @@ def test_delete_scheduled_evaluation_run_rest_interceptors(null_interceptor): with ( mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object(operation.Operation, "_set_result_from_operation"), + mock.patch.object( + transports.EvaluationServiceRestInterceptor, "post_export_evaluation_runs" + ) as post, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "pre_delete_scheduled_evaluation_run", + "post_export_evaluation_runs_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.EvaluationServiceRestInterceptor, "pre_export_evaluation_runs" ) as pre, ): pre.assert_not_called() - pb_message = evaluation_service.DeleteScheduledEvaluationRunRequest.pb( - evaluation_service.DeleteScheduledEvaluationRunRequest() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = evaluation_service.ExportEvaluationRunsRequest.pb( + evaluation_service.ExportEvaluationRunsRequest() ) transcode.return_value = { "method": "post", @@ -28250,15 +30490,19 @@ def test_delete_scheduled_evaluation_run_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = json_format.MessageToJson(operations_pb2.Operation()) + req.return_value.content = return_value - request = evaluation_service.DeleteScheduledEvaluationRunRequest() + request = evaluation_service.ExportEvaluationRunsRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata + post.return_value = operations_pb2.Operation() + post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.delete_scheduled_evaluation_run( + client.export_evaluation_runs( request, metadata=[ ("key", "val"), @@ -28267,16 +30511,20 @@ def test_delete_scheduled_evaluation_run_rest_interceptors(null_interceptor): ) pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() -def test_test_persona_voice_rest_bad_request( - request_type=evaluation_service.TestPersonaVoiceRequest, +def test_export_evaluation_results_rest_bad_request( + request_type=evaluation_service.ExportEvaluationResultsRequest, ): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"app": "projects/sample1/locations/sample2/apps/sample3"} + request_init = { + "parent": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4" + } request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -28292,51 +30540,47 @@ def test_test_persona_voice_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.test_persona_voice(request) + client.export_evaluation_results(request) @pytest.mark.parametrize( "request_type", [ - evaluation_service.TestPersonaVoiceRequest, + evaluation_service.ExportEvaluationResultsRequest, dict, ], ) -def test_test_persona_voice_rest_call_success(request_type): +def test_export_evaluation_results_rest_call_success(request_type): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"app": "projects/sample1/locations/sample2/apps/sample3"} + request_init = { + "parent": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4" + } request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = evaluation_service.TestPersonaVoiceResponse( - audio=b"audio_blob", - ) + return_value = operations_pb2.Operation(name="operations/spam") # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = evaluation_service.TestPersonaVoiceResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.test_persona_voice(request) + response = client.export_evaluation_results(request) # Establish that the response is the type that we expect. - assert isinstance(response, evaluation_service.TestPersonaVoiceResponse) - assert response.audio == b"audio_blob" + json_return_value = json_format.MessageToJson(return_value) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_test_persona_voice_rest_interceptors(null_interceptor): +def test_export_evaluation_results_rest_interceptors(null_interceptor): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -28348,22 +30592,24 @@ def test_test_persona_voice_rest_interceptors(null_interceptor): with ( mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.EvaluationServiceRestInterceptor, "post_test_persona_voice" + transports.EvaluationServiceRestInterceptor, + "post_export_evaluation_results", ) as post, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "post_test_persona_voice_with_metadata", + "post_export_evaluation_results_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.EvaluationServiceRestInterceptor, "pre_test_persona_voice" + transports.EvaluationServiceRestInterceptor, "pre_export_evaluation_results" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = evaluation_service.TestPersonaVoiceRequest.pb( - evaluation_service.TestPersonaVoiceRequest() + pb_message = evaluation_service.ExportEvaluationResultsRequest.pb( + evaluation_service.ExportEvaluationResultsRequest() ) transcode.return_value = { "method": "post", @@ -28375,24 +30621,19 @@ def test_test_persona_voice_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = evaluation_service.TestPersonaVoiceResponse.to_json( - evaluation_service.TestPersonaVoiceResponse() - ) + return_value = json_format.MessageToJson(operations_pb2.Operation()) req.return_value.content = return_value - request = evaluation_service.TestPersonaVoiceRequest() + request = evaluation_service.ExportEvaluationResultsRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = evaluation_service.TestPersonaVoiceResponse() - post_with_metadata.return_value = ( - evaluation_service.TestPersonaVoiceResponse(), - metadata, - ) + post.return_value = operations_pb2.Operation() + post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.test_persona_voice( + client.export_evaluation_results( request, metadata=[ ("key", "val"), @@ -28405,14 +30646,16 @@ def test_test_persona_voice_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_export_evaluations_rest_bad_request( - request_type=evaluation_service.ExportEvaluationsRequest, +def test_run_evaluation_result_metrics_rest_bad_request( + request_type=evaluation_service.RunEvaluationResultMetricsRequest, ): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2/apps/sample3"} + request_init = { + "evaluation_result_id": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4/results/sample5" + } request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -28428,23 +30671,25 @@ def test_export_evaluations_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.export_evaluations(request) + client.run_evaluation_result_metrics(request) @pytest.mark.parametrize( "request_type", [ - evaluation_service.ExportEvaluationsRequest, + evaluation_service.RunEvaluationResultMetricsRequest, dict, ], ) -def test_export_evaluations_rest_call_success(request_type): +def test_run_evaluation_result_metrics_rest_call_success(request_type): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2/apps/sample3"} + request_init = { + "evaluation_result_id": "projects/sample1/locations/sample2/apps/sample3/evaluations/sample4/results/sample5" + } request = request_type(**request_init) # Mock the http request call within the method and fake a response. @@ -28459,14 +30704,14 @@ def test_export_evaluations_rest_call_success(request_type): response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.export_evaluations(request) + response = client.run_evaluation_result_metrics(request) # Establish that the response is the type that we expect. json_return_value = json_format.MessageToJson(return_value) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_export_evaluations_rest_interceptors(null_interceptor): +def test_run_evaluation_result_metrics_rest_interceptors(null_interceptor): transport = transports.EvaluationServiceRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -28480,21 +30725,23 @@ def test_export_evaluations_rest_interceptors(null_interceptor): mock.patch.object(path_template, "transcode") as transcode, mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.EvaluationServiceRestInterceptor, "post_export_evaluations" + transports.EvaluationServiceRestInterceptor, + "post_run_evaluation_result_metrics", ) as post, mock.patch.object( transports.EvaluationServiceRestInterceptor, - "post_export_evaluations_with_metadata", + "post_run_evaluation_result_metrics_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.EvaluationServiceRestInterceptor, "pre_export_evaluations" + transports.EvaluationServiceRestInterceptor, + "pre_run_evaluation_result_metrics", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = evaluation_service.ExportEvaluationsRequest.pb( - evaluation_service.ExportEvaluationsRequest() + pb_message = evaluation_service.RunEvaluationResultMetricsRequest.pb( + evaluation_service.RunEvaluationResultMetricsRequest() ) transcode.return_value = { "method": "post", @@ -28509,7 +30756,7 @@ def test_export_evaluations_rest_interceptors(null_interceptor): return_value = json_format.MessageToJson(operations_pb2.Operation()) req.return_value.content = return_value - request = evaluation_service.ExportEvaluationsRequest() + request = evaluation_service.RunEvaluationResultMetricsRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), @@ -28518,7 +30765,7 @@ def test_export_evaluations_rest_interceptors(null_interceptor): post.return_value = operations_pb2.Operation() post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.export_evaluations( + client.run_evaluation_result_metrics( request, metadata=[ ("key", "val"), @@ -29578,6 +31825,69 @@ def test_export_evaluations_empty_call_rest(): assert args[0] == request_msg +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_export_evaluation_runs_empty_call_rest(): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.export_evaluation_runs), "__call__" + ) as call: + client.export_evaluation_runs(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = evaluation_service.ExportEvaluationRunsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_export_evaluation_results_empty_call_rest(): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.export_evaluation_results), "__call__" + ) as call: + client.export_evaluation_results(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = evaluation_service.ExportEvaluationResultsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_run_evaluation_result_metrics_empty_call_rest(): + client = EvaluationServiceClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.run_evaluation_result_metrics), "__call__" + ) as call: + client.run_evaluation_result_metrics(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = evaluation_service.RunEvaluationResultMetricsRequest() + assert args[0] == request_msg + + def test_evaluation_service_rest_lro_client(): client = EvaluationServiceClient( credentials=ga_credentials.AnonymousCredentials(), @@ -29660,6 +31970,9 @@ def test_evaluation_service_base_transport(): "delete_scheduled_evaluation_run", "test_persona_voice", "export_evaluations", + "export_evaluation_runs", + "export_evaluation_results", + "run_evaluation_result_metrics", "get_location", "list_locations", "get_operation", @@ -30042,6 +32355,15 @@ def test_evaluation_service_client_transport_session_collision(transport_name): session1 = client1.transport.export_evaluations._session session2 = client2.transport.export_evaluations._session assert session1 != session2 + session1 = client1.transport.export_evaluation_runs._session + session2 = client2.transport.export_evaluation_runs._session + assert session1 != session2 + session1 = client1.transport.export_evaluation_results._session + session2 = client2.transport.export_evaluation_results._session + assert session1 != session2 + session1 = client1.transport.run_evaluation_result_metrics._session + session2 = client2.transport.run_evaluation_result_metrics._session + assert session1 != session2 def test_evaluation_service_grpc_transport_channel(): diff --git a/packages/google-cloud-ces/tests/unit/gapic/ces_v1beta/test_tool_service.py b/packages/google-cloud-ces/tests/unit/gapic/ces_v1beta/test_tool_service.py index 91b7ed58b66b..f689fda479f7 100644 --- a/packages/google-cloud-ces/tests/unit/gapic/ces_v1beta/test_tool_service.py +++ b/packages/google-cloud-ces/tests/unit/gapic/ces_v1beta/test_tool_service.py @@ -63,6 +63,7 @@ from google.cloud.ces_v1beta.types import ( mocks, schema, + search_suggestions, session_service, tool, tool_service, diff --git a/packages/google-cloud-confidentialcomputing/google/cloud/confidentialcomputing_v1/services/confidential_computing/async_client.py b/packages/google-cloud-confidentialcomputing/google/cloud/confidentialcomputing_v1/services/confidential_computing/async_client.py index dc575bbe56f4..f5fc593fff9f 100644 --- a/packages/google-cloud-confidentialcomputing/google/cloud/confidentialcomputing_v1/services/confidential_computing/async_client.py +++ b/packages/google-cloud-confidentialcomputing/google/cloud/confidentialcomputing_v1/services/confidential_computing/async_client.py @@ -80,6 +80,8 @@ class ConfidentialComputingAsyncClient: parse_challenge_path = staticmethod( ConfidentialComputingClient.parse_challenge_path ) + instance_path = staticmethod(ConfidentialComputingClient.instance_path) + parse_instance_path = staticmethod(ConfidentialComputingClient.parse_instance_path) common_billing_account_path = staticmethod( ConfidentialComputingClient.common_billing_account_path ) diff --git a/packages/google-cloud-confidentialcomputing/google/cloud/confidentialcomputing_v1/services/confidential_computing/client.py b/packages/google-cloud-confidentialcomputing/google/cloud/confidentialcomputing_v1/services/confidential_computing/client.py index 170c3616a4c0..ae062b8399cf 100644 --- a/packages/google-cloud-confidentialcomputing/google/cloud/confidentialcomputing_v1/services/confidential_computing/client.py +++ b/packages/google-cloud-confidentialcomputing/google/cloud/confidentialcomputing_v1/services/confidential_computing/client.py @@ -251,6 +251,28 @@ def parse_challenge_path(path: str) -> Dict[str, str]: ) return m.groupdict() if m else {} + @staticmethod + def instance_path( + project: str, + zone: str, + instance: str, + ) -> str: + """Returns a fully-qualified instance string.""" + return "projects/{project}/zones/{zone}/instances/{instance}".format( + project=project, + zone=zone, + instance=instance, + ) + + @staticmethod + def parse_instance_path(path: str) -> Dict[str, str]: + """Parses a instance path into its component segments.""" + m = re.match( + r"^projects/(?P.+?)/zones/(?P.+?)/instances/(?P.+?)$", + path, + ) + return m.groupdict() if m else {} + @staticmethod def common_billing_account_path( billing_account: str, diff --git a/packages/google-cloud-confidentialcomputing/google/cloud/confidentialcomputing_v1/types/service.py b/packages/google-cloud-confidentialcomputing/google/cloud/confidentialcomputing_v1/types/service.py index eb0ab92b3e37..da138cc82134 100644 --- a/packages/google-cloud-confidentialcomputing/google/cloud/confidentialcomputing_v1/types/service.py +++ b/packages/google-cloud-confidentialcomputing/google/cloud/confidentialcomputing_v1/types/service.py @@ -254,6 +254,10 @@ class VerifyAttestationRequest(proto.Message): attester (str): Optional. An optional indicator of the attester, only applies to certain products. + instance (str): + Optional. Optional resource link of the Compute Engine + instance. Format: + ``projects/{project_number}/zones/{zone}/instances/{instance_id}`` """ td_ccel: "TdxCcelAttestation" = proto.Field( @@ -302,6 +306,10 @@ class VerifyAttestationRequest(proto.Message): proto.STRING, number=8, ) + instance: str = proto.Field( + proto.STRING, + number=10, + ) class NvidiaAttestation(proto.Message): diff --git a/packages/google-cloud-confidentialcomputing/tests/unit/gapic/confidentialcomputing_v1/test_confidential_computing.py b/packages/google-cloud-confidentialcomputing/tests/unit/gapic/confidentialcomputing_v1/test_confidential_computing.py index d41ba1beb121..5254bb67e682 100644 --- a/packages/google-cloud-confidentialcomputing/tests/unit/gapic/confidentialcomputing_v1/test_confidential_computing.py +++ b/packages/google-cloud-confidentialcomputing/tests/unit/gapic/confidentialcomputing_v1/test_confidential_computing.py @@ -1779,6 +1779,7 @@ def test_verify_attestation_non_empty_request_with_auto_populated_field(): request = service.VerifyAttestationRequest( challenge="challenge_value", attester="attester_value", + instance="instance_value", ) # Mock the actual call within the gRPC stub, and fake the request. @@ -1794,6 +1795,7 @@ def test_verify_attestation_non_empty_request_with_auto_populated_field(): request_msg = service.VerifyAttestationRequest( challenge="challenge_value", attester="attester_value", + instance="instance_value", ) assert args[0] == request_msg @@ -4713,8 +4715,34 @@ def test_parse_challenge_path(): assert expected == actual +def test_instance_path(): + project = "cuttlefish" + zone = "mussel" + instance = "winkle" + expected = "projects/{project}/zones/{zone}/instances/{instance}".format( + project=project, + zone=zone, + instance=instance, + ) + actual = ConfidentialComputingClient.instance_path(project, zone, instance) + assert expected == actual + + +def test_parse_instance_path(): + expected = { + "project": "nautilus", + "zone": "scallop", + "instance": "abalone", + } + path = ConfidentialComputingClient.instance_path(**expected) + + # Check that the path construction is reversible. + actual = ConfidentialComputingClient.parse_instance_path(path) + assert expected == actual + + def test_common_billing_account_path(): - billing_account = "cuttlefish" + billing_account = "squid" expected = "billingAccounts/{billing_account}".format( billing_account=billing_account, ) @@ -4724,7 +4752,7 @@ def test_common_billing_account_path(): def test_parse_common_billing_account_path(): expected = { - "billing_account": "mussel", + "billing_account": "clam", } path = ConfidentialComputingClient.common_billing_account_path(**expected) @@ -4734,7 +4762,7 @@ def test_parse_common_billing_account_path(): def test_common_folder_path(): - folder = "winkle" + folder = "whelk" expected = "folders/{folder}".format( folder=folder, ) @@ -4744,7 +4772,7 @@ def test_common_folder_path(): def test_parse_common_folder_path(): expected = { - "folder": "nautilus", + "folder": "octopus", } path = ConfidentialComputingClient.common_folder_path(**expected) @@ -4754,7 +4782,7 @@ def test_parse_common_folder_path(): def test_common_organization_path(): - organization = "scallop" + organization = "oyster" expected = "organizations/{organization}".format( organization=organization, ) @@ -4764,7 +4792,7 @@ def test_common_organization_path(): def test_parse_common_organization_path(): expected = { - "organization": "abalone", + "organization": "nudibranch", } path = ConfidentialComputingClient.common_organization_path(**expected) @@ -4774,7 +4802,7 @@ def test_parse_common_organization_path(): def test_common_project_path(): - project = "squid" + project = "cuttlefish" expected = "projects/{project}".format( project=project, ) @@ -4784,7 +4812,7 @@ def test_common_project_path(): def test_parse_common_project_path(): expected = { - "project": "clam", + "project": "mussel", } path = ConfidentialComputingClient.common_project_path(**expected) @@ -4794,8 +4822,8 @@ def test_parse_common_project_path(): def test_common_location_path(): - project = "whelk" - location = "octopus" + project = "winkle" + location = "nautilus" expected = "projects/{project}/locations/{location}".format( project=project, location=location, @@ -4806,8 +4834,8 @@ def test_common_location_path(): def test_parse_common_location_path(): expected = { - "project": "oyster", - "location": "nudibranch", + "project": "scallop", + "location": "abalone", } path = ConfidentialComputingClient.common_location_path(**expected) diff --git a/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/async_client.py b/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/async_client.py index f2f639474fc3..18d00e1011f0 100644 --- a/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/async_client.py +++ b/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/async_client.py @@ -1811,6 +1811,10 @@ async def sample_list_collection_ids(): For example: ``projects/my-project/databases/my-database/documents/chatrooms/my-chatroom`` + Use + ``projects/{project_id}/databases/{database_id}/documents`` + to list top-level collections. + This corresponds to the ``parent`` field on the ``request`` instance; if ``request`` is provided, this should not be set. diff --git a/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/client.py b/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/client.py index c428d1168a41..163659f8d67e 100644 --- a/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/client.py +++ b/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/client.py @@ -2202,6 +2202,10 @@ def sample_list_collection_ids(): For example: ``projects/my-project/databases/my-database/documents/chatrooms/my-chatroom`` + Use + ``projects/{project_id}/databases/{database_id}/documents`` + to list top-level collections. + This corresponds to the ``parent`` field on the ``request`` instance; if ``request`` is provided, this should not be set. diff --git a/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/transports/base.py b/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/transports/base.py index 5049fe63953e..ab03b0c7783c 100644 --- a/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/transports/base.py +++ b/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/transports/base.py @@ -303,7 +303,6 @@ def _prep_wrapped_messages(self, client_info): maximum=60.0, multiplier=1.3, predicate=retries.if_exception_type( - core_exceptions.DeadlineExceeded, core_exceptions.InternalServerError, core_exceptions.ServiceUnavailable, ), diff --git a/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/transports/grpc_asyncio.py b/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/transports/grpc_asyncio.py index de1e413ca8d2..89b3f3db90f6 100644 --- a/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/transports/grpc_asyncio.py +++ b/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/transports/grpc_asyncio.py @@ -999,7 +999,6 @@ def _prep_wrapped_messages(self, client_info): maximum=60.0, multiplier=1.3, predicate=retries.if_exception_type( - core_exceptions.DeadlineExceeded, core_exceptions.InternalServerError, core_exceptions.ServiceUnavailable, ), diff --git a/packages/google-cloud-firestore/google/cloud/firestore_v1/types/common.py b/packages/google-cloud-firestore/google/cloud/firestore_v1/types/common.py index d81f1099c8d8..b9c4b27f043d 100644 --- a/packages/google-cloud-firestore/google/cloud/firestore_v1/types/common.py +++ b/packages/google-cloud-firestore/google/cloud/firestore_v1/types/common.py @@ -111,21 +111,54 @@ class TransactionOptions(proto.Message): This field is a member of `oneof`_ ``mode``. """ + class ConcurrencyMode(proto.Enum): + r"""The type of concurrency control mode for transactions. + + Values: + CONCURRENCY_MODE_UNSPECIFIED (0): + Start the transaction with the database-level + default concurrency mode. + OPTIMISTIC (1): + Use optimistic concurrency control for the + new transaction. + PESSIMISTIC (2): + Use pessimistic concurrency control for the + new transaction. + """ + + CONCURRENCY_MODE_UNSPECIFIED = 0 + OPTIMISTIC = 1 + PESSIMISTIC = 2 + class ReadWrite(proto.Message): r"""Options for a transaction that can be used to read and write documents. - Firestore does not allow 3rd party auth requests to create - read-write. transactions. Attributes: retry_transaction (bytes): An optional transaction to retry. + concurrency_mode (google.cloud.firestore_v1.types.TransactionOptions.ConcurrencyMode): + Optional. The concurrency control mode to use + for this transaction. + A database is able to use different concurrency + modes for different transactions simultaneously. + + 3rd party auth requests are only allowed to + create optimistic read-write transactions and + must specify that here even if the + database-level setting is already configured to + optimistic. """ retry_transaction: bytes = proto.Field( proto.BYTES, number=1, ) + concurrency_mode: "TransactionOptions.ConcurrencyMode" = proto.Field( + proto.ENUM, + number=2, + enum="TransactionOptions.ConcurrencyMode", + ) class ReadOnly(proto.Message): r"""Options for a transaction that can only be used to read diff --git a/packages/google-cloud-firestore/google/cloud/firestore_v1/types/firestore.py b/packages/google-cloud-firestore/google/cloud/firestore_v1/types/firestore.py index 04ab893831be..7c2f5aa935ec 100644 --- a/packages/google-cloud-firestore/google/cloud/firestore_v1/types/firestore.py +++ b/packages/google-cloud-firestore/google/cloud/firestore_v1/types/firestore.py @@ -884,6 +884,10 @@ class ExecutePipelineRequest(proto.Message): minute timestamp within the past 7 days. This field is a member of `oneof`_ ``consistency_selector``. + auto_commit_transaction (bool): + Optional. Automatically commits the transaction after the + pipeline has been executed. Only permitted in combination + with ``transaction`` or ``new_transaction``. """ database: str = proto.Field( @@ -913,6 +917,10 @@ class ExecutePipelineRequest(proto.Message): oneof="consistency_selector", message=timestamp_pb2.Timestamp, ) + auto_commit_transaction: bool = proto.Field( + proto.BOOL, + number=9, + ) class ExecutePipelineResponse(proto.Message): @@ -1781,6 +1789,10 @@ class ListCollectionIdsRequest(proto.Message): ``projects/{project_id}/databases/{database_id}/documents/{document_path}``. For example: ``projects/my-project/databases/my-database/documents/chatrooms/my-chatroom`` + + Use + ``projects/{project_id}/databases/{database_id}/documents`` + to list top-level collections. page_size (int): The maximum number of results to return. page_token (str): diff --git a/packages/google-cloud-firestore/google/cloud/firestore_v1/types/query.py b/packages/google-cloud-firestore/google/cloud/firestore_v1/types/query.py index 927a4c54a1f2..74240d9c698d 100644 --- a/packages/google-cloud-firestore/google/cloud/firestore_v1/types/query.py +++ b/packages/google-cloud-firestore/google/cloud/firestore_v1/types/query.py @@ -60,10 +60,13 @@ class StructuredQuery(proto.Message): order_by (MutableSequence[google.cloud.firestore_v1.types.StructuredQuery.Order]): The order to apply to the query results. - Firestore allows callers to provide a full ordering, a - partial ordering, or no ordering at all. In all cases, - Firestore guarantees a stable ordering through the following - rules: + Callers can provide a full ordering, a partial ordering, or + no ordering at all. While Firestore will always respect the + provided order, the behavior for queries without a full + ordering is different per database edition: + + In Standard edition, Firestore guarantees a stable ordering + through the following rules: - The ``order_by`` is required to reference all fields used with an inequality filter. @@ -84,6 +87,14 @@ class StructuredQuery(proto.Message): ``WHERE a > 1 ORDER BY a ASC, __name__ ASC`` - ``WHERE __name__ > ... AND a > 1`` becomes ``WHERE __name__ > ... AND a > 1 ORDER BY a ASC, __name__ ASC`` + + In Enterprise edition, Firestore does not guarantee a stable + ordering. Instead it will pick the most efficient ordering + based on the indexes available at the time of query + execution. This will result in a different ordering for + queries that are otherwise identical. To ensure a stable + ordering, always include a unique field in the ``order_by`` + clause, such as ``__name__``. start_at (google.cloud.firestore_v1.types.Cursor): A potential prefix of a position in the result set to start the query at. diff --git a/packages/google-cloud-modelarmor/google/cloud/modelarmor/__init__.py b/packages/google-cloud-modelarmor/google/cloud/modelarmor/__init__.py index e5440e5731c7..b41a7aadfa95 100644 --- a/packages/google-cloud-modelarmor/google/cloud/modelarmor/__init__.py +++ b/packages/google-cloud-modelarmor/google/cloud/modelarmor/__init__.py @@ -63,6 +63,7 @@ SdpFinding, SdpFindingLikelihood, SdpInspectResult, + StreamingMode, Template, UpdateFloorSettingRequest, UpdateTemplateRequest, @@ -118,4 +119,5 @@ "InvocationResult", "RaiFilterType", "SdpFindingLikelihood", + "StreamingMode", ) diff --git a/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/__init__.py b/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/__init__.py index 4f3cb402738e..c93c523b3f4a 100644 --- a/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/__init__.py +++ b/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/__init__.py @@ -65,6 +65,7 @@ SdpFinding, SdpFindingLikelihood, SdpInspectResult, + StreamingMode, Template, UpdateFloorSettingRequest, UpdateTemplateRequest, @@ -198,6 +199,7 @@ def _get_version(dependency_name): "SdpFinding", "SdpFindingLikelihood", "SdpInspectResult", + "StreamingMode", "Template", "UpdateFloorSettingRequest", "UpdateTemplateRequest", diff --git a/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/gapic_metadata.json b/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/gapic_metadata.json index 1597fcac7630..e675dbab5676 100644 --- a/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/gapic_metadata.json +++ b/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/gapic_metadata.json @@ -45,6 +45,16 @@ "sanitize_user_prompt" ] }, + "StreamSanitizeModelResponse": { + "methods": [ + "stream_sanitize_model_response" + ] + }, + "StreamSanitizeUserPrompt": { + "methods": [ + "stream_sanitize_user_prompt" + ] + }, "UpdateFloorSetting": { "methods": [ "update_floor_setting" @@ -95,6 +105,16 @@ "sanitize_user_prompt" ] }, + "StreamSanitizeModelResponse": { + "methods": [ + "stream_sanitize_model_response" + ] + }, + "StreamSanitizeUserPrompt": { + "methods": [ + "stream_sanitize_user_prompt" + ] + }, "UpdateFloorSetting": { "methods": [ "update_floor_setting" @@ -145,6 +165,16 @@ "sanitize_user_prompt" ] }, + "StreamSanitizeModelResponse": { + "methods": [ + "stream_sanitize_model_response" + ] + }, + "StreamSanitizeUserPrompt": { + "methods": [ + "stream_sanitize_user_prompt" + ] + }, "UpdateFloorSetting": { "methods": [ "update_floor_setting" diff --git a/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/async_client.py b/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/async_client.py index 608d54bbdf89..e594d0e5c71e 100644 --- a/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/async_client.py +++ b/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/async_client.py @@ -17,6 +17,9 @@ import re from collections import OrderedDict from typing import ( + AsyncIterable, + AsyncIterator, + Awaitable, Callable, Dict, Mapping, @@ -1280,6 +1283,180 @@ async def sample_sanitize_model_response(): # Done; return the response. return response + def stream_sanitize_user_prompt( + self, + requests: Optional[AsyncIterator[service.SanitizeUserPromptRequest]] = None, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> Awaitable[AsyncIterable[service.SanitizeUserPromptResponse]]: + r"""Streaming version of Sanitize User Prompt. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import modelarmor_v1 + + async def sample_stream_sanitize_user_prompt(): + # Create a client + client = modelarmor_v1.ModelArmorAsyncClient() + + # Initialize request argument(s) + user_prompt_data = modelarmor_v1.DataItem() + user_prompt_data.text = "text_value" + + request = modelarmor_v1.SanitizeUserPromptRequest( + name="name_value", + user_prompt_data=user_prompt_data, + ) + + # This method expects an iterator which contains + # 'modelarmor_v1.SanitizeUserPromptRequest' objects + # Here we create a generator that yields a single `request` for + # demonstrative purposes. + requests = [request] + + def request_generator(): + for request in requests: + yield request + + # Make the request + stream = await client.stream_sanitize_user_prompt(requests=request_generator()) + + # Handle the response + async for response in stream: + print(response) + + Args: + requests (AsyncIterator[`google.cloud.modelarmor_v1.types.SanitizeUserPromptRequest`]): + The request object AsyncIterator. Sanitize User Prompt request. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + AsyncIterable[google.cloud.modelarmor_v1.types.SanitizeUserPromptResponse]: + Sanitized User Prompt Response. + """ + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.stream_sanitize_user_prompt + ] + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = rpc( + requests, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + def stream_sanitize_model_response( + self, + requests: Optional[AsyncIterator[service.SanitizeModelResponseRequest]] = None, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> Awaitable[AsyncIterable[service.SanitizeModelResponseResponse]]: + r"""Streaming version of Sanitizes Model Response. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import modelarmor_v1 + + async def sample_stream_sanitize_model_response(): + # Create a client + client = modelarmor_v1.ModelArmorAsyncClient() + + # Initialize request argument(s) + model_response_data = modelarmor_v1.DataItem() + model_response_data.text = "text_value" + + request = modelarmor_v1.SanitizeModelResponseRequest( + name="name_value", + model_response_data=model_response_data, + ) + + # This method expects an iterator which contains + # 'modelarmor_v1.SanitizeModelResponseRequest' objects + # Here we create a generator that yields a single `request` for + # demonstrative purposes. + requests = [request] + + def request_generator(): + for request in requests: + yield request + + # Make the request + stream = await client.stream_sanitize_model_response(requests=request_generator()) + + # Handle the response + async for response in stream: + print(response) + + Args: + requests (AsyncIterator[`google.cloud.modelarmor_v1.types.SanitizeModelResponseRequest`]): + The request object AsyncIterator. Sanitize Model Response request. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + AsyncIterable[google.cloud.modelarmor_v1.types.SanitizeModelResponseResponse]: + Sanitized Model Response Response. + """ + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.stream_sanitize_model_response + ] + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = rpc( + requests, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + async def get_location( self, request: Optional[Union[locations_pb2.GetLocationRequest, dict]] = None, diff --git a/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/client.py b/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/client.py index 520dddae959d..8e5c48862d87 100644 --- a/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/client.py +++ b/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/client.py @@ -23,6 +23,8 @@ from typing import ( Callable, Dict, + Iterable, + Iterator, Mapping, MutableMapping, MutableSequence, @@ -1710,6 +1712,180 @@ def sample_sanitize_model_response(): # Done; return the response. return response + def stream_sanitize_user_prompt( + self, + requests: Optional[Iterator[service.SanitizeUserPromptRequest]] = None, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> Iterable[service.SanitizeUserPromptResponse]: + r"""Streaming version of Sanitize User Prompt. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import modelarmor_v1 + + def sample_stream_sanitize_user_prompt(): + # Create a client + client = modelarmor_v1.ModelArmorClient() + + # Initialize request argument(s) + user_prompt_data = modelarmor_v1.DataItem() + user_prompt_data.text = "text_value" + + request = modelarmor_v1.SanitizeUserPromptRequest( + name="name_value", + user_prompt_data=user_prompt_data, + ) + + # This method expects an iterator which contains + # 'modelarmor_v1.SanitizeUserPromptRequest' objects + # Here we create a generator that yields a single `request` for + # demonstrative purposes. + requests = [request] + + def request_generator(): + for request in requests: + yield request + + # Make the request + stream = client.stream_sanitize_user_prompt(requests=request_generator()) + + # Handle the response + for response in stream: + print(response) + + Args: + requests (Iterator[google.cloud.modelarmor_v1.types.SanitizeUserPromptRequest]): + The request object iterator. Sanitize User Prompt request. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + Iterable[google.cloud.modelarmor_v1.types.SanitizeUserPromptResponse]: + Sanitized User Prompt Response. + """ + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[ + self._transport.stream_sanitize_user_prompt + ] + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + requests, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + def stream_sanitize_model_response( + self, + requests: Optional[Iterator[service.SanitizeModelResponseRequest]] = None, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> Iterable[service.SanitizeModelResponseResponse]: + r"""Streaming version of Sanitizes Model Response. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import modelarmor_v1 + + def sample_stream_sanitize_model_response(): + # Create a client + client = modelarmor_v1.ModelArmorClient() + + # Initialize request argument(s) + model_response_data = modelarmor_v1.DataItem() + model_response_data.text = "text_value" + + request = modelarmor_v1.SanitizeModelResponseRequest( + name="name_value", + model_response_data=model_response_data, + ) + + # This method expects an iterator which contains + # 'modelarmor_v1.SanitizeModelResponseRequest' objects + # Here we create a generator that yields a single `request` for + # demonstrative purposes. + requests = [request] + + def request_generator(): + for request in requests: + yield request + + # Make the request + stream = client.stream_sanitize_model_response(requests=request_generator()) + + # Handle the response + for response in stream: + print(response) + + Args: + requests (Iterator[google.cloud.modelarmor_v1.types.SanitizeModelResponseRequest]): + The request object iterator. Sanitize Model Response request. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + Iterable[google.cloud.modelarmor_v1.types.SanitizeModelResponseResponse]: + Sanitized Model Response Response. + """ + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[ + self._transport.stream_sanitize_model_response + ] + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + requests, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + def __enter__(self) -> "ModelArmorClient": return self diff --git a/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/transports/base.py b/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/transports/base.py index 1705fb185db6..575fb054b294 100644 --- a/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/transports/base.py +++ b/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/transports/base.py @@ -234,6 +234,16 @@ def _prep_wrapped_messages(self, client_info): default_timeout=60.0, client_info=client_info, ), + self.stream_sanitize_user_prompt: gapic_v1.method.wrap_method( + self.stream_sanitize_user_prompt, + default_timeout=None, + client_info=client_info, + ), + self.stream_sanitize_model_response: gapic_v1.method.wrap_method( + self.stream_sanitize_model_response, + default_timeout=None, + client_info=client_info, + ), self.get_location: gapic_v1.method.wrap_method( self.get_location, default_timeout=None, @@ -342,6 +352,30 @@ def sanitize_model_response( ]: raise NotImplementedError() + @property + def stream_sanitize_user_prompt( + self, + ) -> Callable[ + [service.SanitizeUserPromptRequest], + Union[ + service.SanitizeUserPromptResponse, + Awaitable[service.SanitizeUserPromptResponse], + ], + ]: + raise NotImplementedError() + + @property + def stream_sanitize_model_response( + self, + ) -> Callable[ + [service.SanitizeModelResponseRequest], + Union[ + service.SanitizeModelResponseResponse, + Awaitable[service.SanitizeModelResponseResponse], + ], + ]: + raise NotImplementedError() + @property def get_location( self, diff --git a/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/transports/grpc.py b/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/transports/grpc.py index e9f69d3ed9b8..0362a5ccc9e8 100644 --- a/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/transports/grpc.py +++ b/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/transports/grpc.py @@ -565,6 +565,66 @@ def sanitize_model_response( ) return self._stubs["sanitize_model_response"] + @property + def stream_sanitize_user_prompt( + self, + ) -> Callable[ + [service.SanitizeUserPromptRequest], service.SanitizeUserPromptResponse + ]: + r"""Return a callable for the stream sanitize user prompt method over gRPC. + + Streaming version of Sanitize User Prompt. + + Returns: + Callable[[~.SanitizeUserPromptRequest], + ~.SanitizeUserPromptResponse]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "stream_sanitize_user_prompt" not in self._stubs: + self._stubs["stream_sanitize_user_prompt"] = ( + self._logged_channel.stream_stream( + "/google.cloud.modelarmor.v1.ModelArmor/StreamSanitizeUserPrompt", + request_serializer=service.SanitizeUserPromptRequest.serialize, + response_deserializer=service.SanitizeUserPromptResponse.deserialize, + ) + ) + return self._stubs["stream_sanitize_user_prompt"] + + @property + def stream_sanitize_model_response( + self, + ) -> Callable[ + [service.SanitizeModelResponseRequest], service.SanitizeModelResponseResponse + ]: + r"""Return a callable for the stream sanitize model response method over gRPC. + + Streaming version of Sanitizes Model Response. + + Returns: + Callable[[~.SanitizeModelResponseRequest], + ~.SanitizeModelResponseResponse]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "stream_sanitize_model_response" not in self._stubs: + self._stubs["stream_sanitize_model_response"] = ( + self._logged_channel.stream_stream( + "/google.cloud.modelarmor.v1.ModelArmor/StreamSanitizeModelResponse", + request_serializer=service.SanitizeModelResponseRequest.serialize, + response_deserializer=service.SanitizeModelResponseResponse.deserialize, + ) + ) + return self._stubs["stream_sanitize_model_response"] + def close(self): self._logged_channel.close() diff --git a/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/transports/grpc_asyncio.py b/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/transports/grpc_asyncio.py index 7a44d18f9e54..c9fff56abec8 100644 --- a/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/transports/grpc_asyncio.py +++ b/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/transports/grpc_asyncio.py @@ -579,6 +579,68 @@ def sanitize_model_response( ) return self._stubs["sanitize_model_response"] + @property + def stream_sanitize_user_prompt( + self, + ) -> Callable[ + [service.SanitizeUserPromptRequest], + Awaitable[service.SanitizeUserPromptResponse], + ]: + r"""Return a callable for the stream sanitize user prompt method over gRPC. + + Streaming version of Sanitize User Prompt. + + Returns: + Callable[[~.SanitizeUserPromptRequest], + Awaitable[~.SanitizeUserPromptResponse]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "stream_sanitize_user_prompt" not in self._stubs: + self._stubs["stream_sanitize_user_prompt"] = ( + self._logged_channel.stream_stream( + "/google.cloud.modelarmor.v1.ModelArmor/StreamSanitizeUserPrompt", + request_serializer=service.SanitizeUserPromptRequest.serialize, + response_deserializer=service.SanitizeUserPromptResponse.deserialize, + ) + ) + return self._stubs["stream_sanitize_user_prompt"] + + @property + def stream_sanitize_model_response( + self, + ) -> Callable[ + [service.SanitizeModelResponseRequest], + Awaitable[service.SanitizeModelResponseResponse], + ]: + r"""Return a callable for the stream sanitize model response method over gRPC. + + Streaming version of Sanitizes Model Response. + + Returns: + Callable[[~.SanitizeModelResponseRequest], + Awaitable[~.SanitizeModelResponseResponse]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "stream_sanitize_model_response" not in self._stubs: + self._stubs["stream_sanitize_model_response"] = ( + self._logged_channel.stream_stream( + "/google.cloud.modelarmor.v1.ModelArmor/StreamSanitizeModelResponse", + request_serializer=service.SanitizeModelResponseRequest.serialize, + response_deserializer=service.SanitizeModelResponseResponse.deserialize, + ) + ) + return self._stubs["stream_sanitize_model_response"] + def _prep_wrapped_messages(self, client_info): """Precompute the wrapped methods, overriding the base class method to use async wrappers.""" self._wrapped_methods = { @@ -672,6 +734,16 @@ def _prep_wrapped_messages(self, client_info): default_timeout=60.0, client_info=client_info, ), + self.stream_sanitize_user_prompt: self._wrap_method( + self.stream_sanitize_user_prompt, + default_timeout=None, + client_info=client_info, + ), + self.stream_sanitize_model_response: self._wrap_method( + self.stream_sanitize_model_response, + default_timeout=None, + client_info=client_info, + ), self.get_location: self._wrap_method( self.get_location, default_timeout=None, diff --git a/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/transports/rest.py b/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/transports/rest.py index 731a96b8adc9..dba1a866b9f6 100644 --- a/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/transports/rest.py +++ b/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/transports/rest.py @@ -1691,6 +1691,43 @@ def __call__( ) return resp + class _StreamSanitizeModelResponse( + _BaseModelArmorRestTransport._BaseStreamSanitizeModelResponse, + ModelArmorRestStub, + ): + def __hash__(self): + return hash("ModelArmorRestTransport.StreamSanitizeModelResponse") + + def __call__( + self, + request: service.SanitizeModelResponseRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> rest_streaming.ResponseIterator: + raise NotImplementedError( + "Method StreamSanitizeModelResponse is not available over REST transport" + ) + + class _StreamSanitizeUserPrompt( + _BaseModelArmorRestTransport._BaseStreamSanitizeUserPrompt, ModelArmorRestStub + ): + def __hash__(self): + return hash("ModelArmorRestTransport.StreamSanitizeUserPrompt") + + def __call__( + self, + request: service.SanitizeUserPromptRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> rest_streaming.ResponseIterator: + raise NotImplementedError( + "Method StreamSanitizeUserPrompt is not available over REST transport" + ) + class _UpdateFloorSetting( _BaseModelArmorRestTransport._BaseUpdateFloorSetting, ModelArmorRestStub ): @@ -2057,6 +2094,30 @@ def sanitize_user_prompt( # In C++ this would require a dynamic_cast return self._SanitizeUserPrompt(self._session, self._host, self._interceptor) # type: ignore + @property + def stream_sanitize_model_response( + self, + ) -> Callable[ + [service.SanitizeModelResponseRequest], service.SanitizeModelResponseResponse + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._StreamSanitizeModelResponse( + self._session, self._host, self._interceptor + ) # type: ignore + + @property + def stream_sanitize_user_prompt( + self, + ) -> Callable[ + [service.SanitizeUserPromptRequest], service.SanitizeUserPromptResponse + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._StreamSanitizeUserPrompt( + self._session, self._host, self._interceptor + ) # type: ignore + @property def update_floor_setting( self, diff --git a/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/transports/rest_base.py b/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/transports/rest_base.py index 4fc5ff490866..c70a5a387a89 100644 --- a/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/transports/rest_base.py +++ b/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/services/model_armor/transports/rest_base.py @@ -458,6 +458,14 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params + class _BaseStreamSanitizeModelResponse: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + + class _BaseStreamSanitizeUserPrompt: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + class _BaseUpdateFloorSetting: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") diff --git a/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/types/__init__.py b/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/types/__init__.py index d7ac393cbe7a..803dc9a29614 100644 --- a/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/types/__init__.py +++ b/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/types/__init__.py @@ -54,6 +54,7 @@ SdpFinding, SdpFindingLikelihood, SdpInspectResult, + StreamingMode, Template, UpdateFloorSettingRequest, UpdateTemplateRequest, @@ -107,4 +108,5 @@ "InvocationResult", "RaiFilterType", "SdpFindingLikelihood", + "StreamingMode", ) diff --git a/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/types/service.py b/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/types/service.py index 4499ee07e551..7187ce979be8 100644 --- a/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/types/service.py +++ b/packages/google-cloud-modelarmor/google/cloud/modelarmor_v1/types/service.py @@ -30,6 +30,7 @@ "DetectionConfidenceLevel", "SdpFindingLikelihood", "InvocationResult", + "StreamingMode", "Template", "FloorSetting", "AiPlatformFloorSetting", @@ -205,6 +206,23 @@ class InvocationResult(proto.Enum): FAILURE = 3 +class StreamingMode(proto.Enum): + r"""Streaming Mode for Sanitize\* API. + + Values: + STREAMING_MODE_UNSPECIFIED (0): + Default value. + STREAMING_MODE_BUFFERED (1): + Buffered Streaming mode. + STREAMING_MODE_REALTIME (2): + Real Time Streaming mode. + """ + + STREAMING_MODE_UNSPECIFIED = 0 + STREAMING_MODE_BUFFERED = 1 + STREAMING_MODE_REALTIME = 2 + + class Template(proto.Message): r"""Message describing Template resource @@ -1076,6 +1094,8 @@ class SdpAdvancedConfig(proto.Message): class SanitizeUserPromptRequest(proto.Message): r"""Sanitize User Prompt request. + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + Attributes: name (str): Required. Represents resource name of @@ -1086,6 +1106,10 @@ class SanitizeUserPromptRequest(proto.Message): multi_language_detection_metadata (google.cloud.modelarmor_v1.types.MultiLanguageDetectionMetadata): Optional. Metadata related to Multi Language Detection. + streaming_mode (google.cloud.modelarmor_v1.types.StreamingMode): + Optional. Streaming Mode for StreamSanitize\* API. + + This field is a member of `oneof`_ ``_streaming_mode``. """ name: str = proto.Field( @@ -1102,11 +1126,19 @@ class SanitizeUserPromptRequest(proto.Message): number=6, message="MultiLanguageDetectionMetadata", ) + streaming_mode: "StreamingMode" = proto.Field( + proto.ENUM, + number=7, + optional=True, + enum="StreamingMode", + ) class SanitizeModelResponseRequest(proto.Message): r"""Sanitize Model Response request. + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + Attributes: name (str): Required. Represents resource name of @@ -1120,6 +1152,10 @@ class SanitizeModelResponseRequest(proto.Message): multi_language_detection_metadata (google.cloud.modelarmor_v1.types.MultiLanguageDetectionMetadata): Optional. Metadata related for multi language detection. + streaming_mode (google.cloud.modelarmor_v1.types.StreamingMode): + Optional. Streaming Mode for StreamSanitize\* API. + + This field is a member of `oneof`_ ``_streaming_mode``. """ name: str = proto.Field( @@ -1140,6 +1176,12 @@ class SanitizeModelResponseRequest(proto.Message): number=7, message="MultiLanguageDetectionMetadata", ) + streaming_mode: "StreamingMode" = proto.Field( + proto.ENUM, + number=8, + optional=True, + enum="StreamingMode", + ) class SanitizeUserPromptResponse(proto.Message): @@ -1217,6 +1259,9 @@ class SanitizationMetadata(proto.Message): Passthrough field defined in TemplateMetadata to indicate whether to ignore partial invocation failures. + stream_chunk_processed (google.cloud.modelarmor_v1.types.DataItem): + Output only. The stream chunk processed by + the Sanitization service. """ error_code: int = proto.Field( @@ -1231,6 +1276,11 @@ class SanitizationMetadata(proto.Message): proto.BOOL, number=3, ) + stream_chunk_processed: "DataItem" = proto.Field( + proto.MESSAGE, + number=4, + message="DataItem", + ) filter_match_state: "FilterMatchState" = proto.Field( proto.ENUM, diff --git a/packages/google-cloud-modelarmor/samples/generated_samples/modelarmor_v1_generated_model_armor_stream_sanitize_model_response_async.py b/packages/google-cloud-modelarmor/samples/generated_samples/modelarmor_v1_generated_model_armor_stream_sanitize_model_response_async.py new file mode 100644 index 000000000000..d5b66a4ec3f4 --- /dev/null +++ b/packages/google-cloud-modelarmor/samples/generated_samples/modelarmor_v1_generated_model_armor_stream_sanitize_model_response_async.py @@ -0,0 +1,68 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for StreamSanitizeModelResponse +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-modelarmor + + +# [START modelarmor_v1_generated_ModelArmor_StreamSanitizeModelResponse_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import modelarmor_v1 + + +async def sample_stream_sanitize_model_response(): + # Create a client + client = modelarmor_v1.ModelArmorAsyncClient() + + # Initialize request argument(s) + model_response_data = modelarmor_v1.DataItem() + model_response_data.text = "text_value" + + request = modelarmor_v1.SanitizeModelResponseRequest( + name="name_value", + model_response_data=model_response_data, + ) + + # This method expects an iterator which contains + # 'modelarmor_v1.SanitizeModelResponseRequest' objects + # Here we create a generator that yields a single `request` for + # demonstrative purposes. + requests = [request] + + def request_generator(): + for request in requests: + yield request + + # Make the request + stream = await client.stream_sanitize_model_response(requests=request_generator()) + + # Handle the response + async for response in stream: + print(response) + + +# [END modelarmor_v1_generated_ModelArmor_StreamSanitizeModelResponse_async] diff --git a/packages/google-cloud-modelarmor/samples/generated_samples/modelarmor_v1_generated_model_armor_stream_sanitize_model_response_sync.py b/packages/google-cloud-modelarmor/samples/generated_samples/modelarmor_v1_generated_model_armor_stream_sanitize_model_response_sync.py new file mode 100644 index 000000000000..7c1a141649a3 --- /dev/null +++ b/packages/google-cloud-modelarmor/samples/generated_samples/modelarmor_v1_generated_model_armor_stream_sanitize_model_response_sync.py @@ -0,0 +1,68 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for StreamSanitizeModelResponse +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-modelarmor + + +# [START modelarmor_v1_generated_ModelArmor_StreamSanitizeModelResponse_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import modelarmor_v1 + + +def sample_stream_sanitize_model_response(): + # Create a client + client = modelarmor_v1.ModelArmorClient() + + # Initialize request argument(s) + model_response_data = modelarmor_v1.DataItem() + model_response_data.text = "text_value" + + request = modelarmor_v1.SanitizeModelResponseRequest( + name="name_value", + model_response_data=model_response_data, + ) + + # This method expects an iterator which contains + # 'modelarmor_v1.SanitizeModelResponseRequest' objects + # Here we create a generator that yields a single `request` for + # demonstrative purposes. + requests = [request] + + def request_generator(): + for request in requests: + yield request + + # Make the request + stream = client.stream_sanitize_model_response(requests=request_generator()) + + # Handle the response + for response in stream: + print(response) + + +# [END modelarmor_v1_generated_ModelArmor_StreamSanitizeModelResponse_sync] diff --git a/packages/google-cloud-modelarmor/samples/generated_samples/modelarmor_v1_generated_model_armor_stream_sanitize_user_prompt_async.py b/packages/google-cloud-modelarmor/samples/generated_samples/modelarmor_v1_generated_model_armor_stream_sanitize_user_prompt_async.py new file mode 100644 index 000000000000..e8fa7e643f8d --- /dev/null +++ b/packages/google-cloud-modelarmor/samples/generated_samples/modelarmor_v1_generated_model_armor_stream_sanitize_user_prompt_async.py @@ -0,0 +1,68 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for StreamSanitizeUserPrompt +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-modelarmor + + +# [START modelarmor_v1_generated_ModelArmor_StreamSanitizeUserPrompt_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import modelarmor_v1 + + +async def sample_stream_sanitize_user_prompt(): + # Create a client + client = modelarmor_v1.ModelArmorAsyncClient() + + # Initialize request argument(s) + user_prompt_data = modelarmor_v1.DataItem() + user_prompt_data.text = "text_value" + + request = modelarmor_v1.SanitizeUserPromptRequest( + name="name_value", + user_prompt_data=user_prompt_data, + ) + + # This method expects an iterator which contains + # 'modelarmor_v1.SanitizeUserPromptRequest' objects + # Here we create a generator that yields a single `request` for + # demonstrative purposes. + requests = [request] + + def request_generator(): + for request in requests: + yield request + + # Make the request + stream = await client.stream_sanitize_user_prompt(requests=request_generator()) + + # Handle the response + async for response in stream: + print(response) + + +# [END modelarmor_v1_generated_ModelArmor_StreamSanitizeUserPrompt_async] diff --git a/packages/google-cloud-modelarmor/samples/generated_samples/modelarmor_v1_generated_model_armor_stream_sanitize_user_prompt_sync.py b/packages/google-cloud-modelarmor/samples/generated_samples/modelarmor_v1_generated_model_armor_stream_sanitize_user_prompt_sync.py new file mode 100644 index 000000000000..2b1e32fe5439 --- /dev/null +++ b/packages/google-cloud-modelarmor/samples/generated_samples/modelarmor_v1_generated_model_armor_stream_sanitize_user_prompt_sync.py @@ -0,0 +1,68 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for StreamSanitizeUserPrompt +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-modelarmor + + +# [START modelarmor_v1_generated_ModelArmor_StreamSanitizeUserPrompt_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import modelarmor_v1 + + +def sample_stream_sanitize_user_prompt(): + # Create a client + client = modelarmor_v1.ModelArmorClient() + + # Initialize request argument(s) + user_prompt_data = modelarmor_v1.DataItem() + user_prompt_data.text = "text_value" + + request = modelarmor_v1.SanitizeUserPromptRequest( + name="name_value", + user_prompt_data=user_prompt_data, + ) + + # This method expects an iterator which contains + # 'modelarmor_v1.SanitizeUserPromptRequest' objects + # Here we create a generator that yields a single `request` for + # demonstrative purposes. + requests = [request] + + def request_generator(): + for request in requests: + yield request + + # Make the request + stream = client.stream_sanitize_user_prompt(requests=request_generator()) + + # Handle the response + for response in stream: + print(response) + + +# [END modelarmor_v1_generated_ModelArmor_StreamSanitizeUserPrompt_sync] diff --git a/packages/google-cloud-modelarmor/samples/generated_samples/snippet_metadata_google.cloud.modelarmor.v1.json b/packages/google-cloud-modelarmor/samples/generated_samples/snippet_metadata_google.cloud.modelarmor.v1.json index 5c4dd1c2f263..acc1dee1e100 100644 --- a/packages/google-cloud-modelarmor/samples/generated_samples/snippet_metadata_google.cloud.modelarmor.v1.json +++ b/packages/google-cloud-modelarmor/samples/generated_samples/snippet_metadata_google.cloud.modelarmor.v1.json @@ -1132,6 +1132,312 @@ ], "title": "modelarmor_v1_generated_model_armor_sanitize_user_prompt_sync.py" }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.modelarmor_v1.ModelArmorAsyncClient", + "shortName": "ModelArmorAsyncClient" + }, + "fullName": "google.cloud.modelarmor_v1.ModelArmorAsyncClient.stream_sanitize_model_response", + "method": { + "fullName": "google.cloud.modelarmor.v1.ModelArmor.StreamSanitizeModelResponse", + "service": { + "fullName": "google.cloud.modelarmor.v1.ModelArmor", + "shortName": "ModelArmor" + }, + "shortName": "StreamSanitizeModelResponse" + }, + "parameters": [ + { + "name": "requests", + "type": "Iterator[google.cloud.modelarmor_v1.types.SanitizeModelResponseRequest]" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "Iterable[google.cloud.modelarmor_v1.types.SanitizeModelResponseResponse]", + "shortName": "stream_sanitize_model_response" + }, + "description": "Sample for StreamSanitizeModelResponse", + "file": "modelarmor_v1_generated_model_armor_stream_sanitize_model_response_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "modelarmor_v1_generated_ModelArmor_StreamSanitizeModelResponse_async", + "segments": [ + { + "end": 66, + "start": 27, + "type": "FULL" + }, + { + "end": 66, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 59, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 62, + "start": 60, + "type": "REQUEST_EXECUTION" + }, + { + "end": 67, + "start": 63, + "type": "RESPONSE_HANDLING" + } + ], + "title": "modelarmor_v1_generated_model_armor_stream_sanitize_model_response_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.modelarmor_v1.ModelArmorClient", + "shortName": "ModelArmorClient" + }, + "fullName": "google.cloud.modelarmor_v1.ModelArmorClient.stream_sanitize_model_response", + "method": { + "fullName": "google.cloud.modelarmor.v1.ModelArmor.StreamSanitizeModelResponse", + "service": { + "fullName": "google.cloud.modelarmor.v1.ModelArmor", + "shortName": "ModelArmor" + }, + "shortName": "StreamSanitizeModelResponse" + }, + "parameters": [ + { + "name": "requests", + "type": "Iterator[google.cloud.modelarmor_v1.types.SanitizeModelResponseRequest]" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "Iterable[google.cloud.modelarmor_v1.types.SanitizeModelResponseResponse]", + "shortName": "stream_sanitize_model_response" + }, + "description": "Sample for StreamSanitizeModelResponse", + "file": "modelarmor_v1_generated_model_armor_stream_sanitize_model_response_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "modelarmor_v1_generated_ModelArmor_StreamSanitizeModelResponse_sync", + "segments": [ + { + "end": 66, + "start": 27, + "type": "FULL" + }, + { + "end": 66, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 59, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 62, + "start": 60, + "type": "REQUEST_EXECUTION" + }, + { + "end": 67, + "start": 63, + "type": "RESPONSE_HANDLING" + } + ], + "title": "modelarmor_v1_generated_model_armor_stream_sanitize_model_response_sync.py" + }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.modelarmor_v1.ModelArmorAsyncClient", + "shortName": "ModelArmorAsyncClient" + }, + "fullName": "google.cloud.modelarmor_v1.ModelArmorAsyncClient.stream_sanitize_user_prompt", + "method": { + "fullName": "google.cloud.modelarmor.v1.ModelArmor.StreamSanitizeUserPrompt", + "service": { + "fullName": "google.cloud.modelarmor.v1.ModelArmor", + "shortName": "ModelArmor" + }, + "shortName": "StreamSanitizeUserPrompt" + }, + "parameters": [ + { + "name": "requests", + "type": "Iterator[google.cloud.modelarmor_v1.types.SanitizeUserPromptRequest]" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "Iterable[google.cloud.modelarmor_v1.types.SanitizeUserPromptResponse]", + "shortName": "stream_sanitize_user_prompt" + }, + "description": "Sample for StreamSanitizeUserPrompt", + "file": "modelarmor_v1_generated_model_armor_stream_sanitize_user_prompt_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "modelarmor_v1_generated_ModelArmor_StreamSanitizeUserPrompt_async", + "segments": [ + { + "end": 66, + "start": 27, + "type": "FULL" + }, + { + "end": 66, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 59, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 62, + "start": 60, + "type": "REQUEST_EXECUTION" + }, + { + "end": 67, + "start": 63, + "type": "RESPONSE_HANDLING" + } + ], + "title": "modelarmor_v1_generated_model_armor_stream_sanitize_user_prompt_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.modelarmor_v1.ModelArmorClient", + "shortName": "ModelArmorClient" + }, + "fullName": "google.cloud.modelarmor_v1.ModelArmorClient.stream_sanitize_user_prompt", + "method": { + "fullName": "google.cloud.modelarmor.v1.ModelArmor.StreamSanitizeUserPrompt", + "service": { + "fullName": "google.cloud.modelarmor.v1.ModelArmor", + "shortName": "ModelArmor" + }, + "shortName": "StreamSanitizeUserPrompt" + }, + "parameters": [ + { + "name": "requests", + "type": "Iterator[google.cloud.modelarmor_v1.types.SanitizeUserPromptRequest]" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "Iterable[google.cloud.modelarmor_v1.types.SanitizeUserPromptResponse]", + "shortName": "stream_sanitize_user_prompt" + }, + "description": "Sample for StreamSanitizeUserPrompt", + "file": "modelarmor_v1_generated_model_armor_stream_sanitize_user_prompt_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "modelarmor_v1_generated_ModelArmor_StreamSanitizeUserPrompt_sync", + "segments": [ + { + "end": 66, + "start": 27, + "type": "FULL" + }, + { + "end": 66, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 59, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 62, + "start": 60, + "type": "REQUEST_EXECUTION" + }, + { + "end": 67, + "start": 63, + "type": "RESPONSE_HANDLING" + } + ], + "title": "modelarmor_v1_generated_model_armor_stream_sanitize_user_prompt_sync.py" + }, { "canonical": true, "clientMethod": { diff --git a/packages/google-cloud-modelarmor/tests/unit/gapic/modelarmor_v1/test_model_armor.py b/packages/google-cloud-modelarmor/tests/unit/gapic/modelarmor_v1/test_model_armor.py index cd9535a7e721..871aa451e671 100644 --- a/packages/google-cloud-modelarmor/tests/unit/gapic/modelarmor_v1/test_model_armor.py +++ b/packages/google-cloud-modelarmor/tests/unit/gapic/modelarmor_v1/test_model_armor.py @@ -4333,6 +4333,326 @@ async def test_sanitize_model_response_field_headers_async(): ) in kw["metadata"] +@pytest.mark.parametrize( + "request_type", + [ + service.SanitizeUserPromptRequest(), + {}, + ], +) +def test_stream_sanitize_user_prompt(request_type, transport: str = "grpc"): + client = ModelArmorClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + requests = [request] + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.stream_sanitize_user_prompt), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = iter([service.SanitizeUserPromptResponse()]) + response = client.stream_sanitize_user_prompt(iter(requests)) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert next(args[0]) == request + + # Establish that the response is the type that we expect. + for message in response: + assert isinstance(message, service.SanitizeUserPromptResponse) + + +def test_stream_sanitize_user_prompt_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = ModelArmorClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.stream_sanitize_user_prompt + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.stream_sanitize_user_prompt + ] = mock_rpc + request = [{}] + client.stream_sanitize_user_prompt(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.stream_sanitize_user_prompt(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +@pytest.mark.asyncio +async def test_stream_sanitize_user_prompt_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", +): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = ModelArmorAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._client._transport.stream_sanitize_user_prompt + in client._client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.stream_sanitize_user_prompt + ] = mock_rpc + + request = [{}] + await client.stream_sanitize_user_prompt(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + await client.stream_sanitize_user_prompt(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + service.SanitizeUserPromptRequest(), + {}, + ], +) +async def test_stream_sanitize_user_prompt_async( + request_type, transport: str = "grpc_asyncio" +): + client = ModelArmorAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) + + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + requests = [request] + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.stream_sanitize_user_prompt), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = mock.Mock(aio.StreamStreamCall, autospec=True) + call.return_value.read = mock.AsyncMock( + side_effect=[service.SanitizeUserPromptResponse()] + ) + response = await client.stream_sanitize_user_prompt(iter(requests)) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert next(args[0]) == request + + # Establish that the response is the type that we expect. + message = await response.read() + assert isinstance(message, service.SanitizeUserPromptResponse) + + +@pytest.mark.parametrize( + "request_type", + [ + service.SanitizeModelResponseRequest(), + {}, + ], +) +def test_stream_sanitize_model_response(request_type, transport: str = "grpc"): + client = ModelArmorClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + requests = [request] + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.stream_sanitize_model_response), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = iter([service.SanitizeModelResponseResponse()]) + response = client.stream_sanitize_model_response(iter(requests)) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert next(args[0]) == request + + # Establish that the response is the type that we expect. + for message in response: + assert isinstance(message, service.SanitizeModelResponseResponse) + + +def test_stream_sanitize_model_response_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = ModelArmorClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.stream_sanitize_model_response + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.stream_sanitize_model_response + ] = mock_rpc + request = [{}] + client.stream_sanitize_model_response(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.stream_sanitize_model_response(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +@pytest.mark.asyncio +async def test_stream_sanitize_model_response_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", +): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = ModelArmorAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._client._transport.stream_sanitize_model_response + in client._client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.stream_sanitize_model_response + ] = mock_rpc + + request = [{}] + await client.stream_sanitize_model_response(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + await client.stream_sanitize_model_response(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + service.SanitizeModelResponseRequest(), + {}, + ], +) +async def test_stream_sanitize_model_response_async( + request_type, transport: str = "grpc_asyncio" +): + client = ModelArmorAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) + + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + requests = [request] + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.stream_sanitize_model_response), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = mock.Mock(aio.StreamStreamCall, autospec=True) + call.return_value.read = mock.AsyncMock( + side_effect=[service.SanitizeModelResponseResponse()] + ) + response = await client.stream_sanitize_model_response(iter(requests)) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert next(args[0]) == request + + # Establish that the response is the type that we expect. + message = await response.read() + assert isinstance(message, service.SanitizeModelResponseResponse) + + def test_list_templates_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call @@ -5985,6 +6305,56 @@ def test_sanitize_model_response_rest_unset_required_fields(): ) +def test_stream_sanitize_user_prompt_rest_no_http_options(): + client = ModelArmorClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = service.SanitizeUserPromptRequest() + requests = [request] + with pytest.raises(RuntimeError): + client.stream_sanitize_user_prompt(requests) + + +def test_stream_sanitize_model_response_rest_no_http_options(): + client = ModelArmorClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = service.SanitizeModelResponseRequest() + requests = [request] + with pytest.raises(RuntimeError): + client.stream_sanitize_model_response(requests) + + +def test_stream_sanitize_user_prompt_rest_error(): + client = ModelArmorClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # Since a `google.api.http` annotation is required for using a rest transport + # method, this should error. + with pytest.raises(NotImplementedError) as not_implemented_error: + client.stream_sanitize_user_prompt({}) + assert ( + "Method StreamSanitizeUserPrompt is not available over REST transport" + in str(not_implemented_error.value) + ) + + +def test_stream_sanitize_model_response_rest_error(): + client = ModelArmorClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # Since a `google.api.http` annotation is required for using a rest transport + # method, this should error. + with pytest.raises(NotImplementedError) as not_implemented_error: + client.stream_sanitize_model_response({}) + assert ( + "Method StreamSanitizeModelResponse is not available over REST transport" + in str(not_implemented_error.value) + ) + + def test_credentials_transport_error(): # It is an error to provide credentials and a transport instance. transport = transports.ModelArmorGrpcTransport( @@ -8000,6 +8370,32 @@ def test_sanitize_model_response_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() +def test_stream_sanitize_user_prompt_rest_error(): + client = ModelArmorClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + with pytest.raises(NotImplementedError) as not_implemented_error: + client.stream_sanitize_user_prompt({}) + assert ( + "Method StreamSanitizeUserPrompt is not available over REST transport" + in str(not_implemented_error.value) + ) + + +def test_stream_sanitize_model_response_rest_error(): + client = ModelArmorClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + with pytest.raises(NotImplementedError) as not_implemented_error: + client.stream_sanitize_model_response({}) + assert ( + "Method StreamSanitizeModelResponse is not available over REST transport" + in str(not_implemented_error.value) + ) + + def test_get_location_rest_bad_request(request_type=locations_pb2.GetLocationRequest): client = ModelArmorClient( credentials=ga_credentials.AnonymousCredentials(), @@ -8350,6 +8746,8 @@ def test_model_armor_base_transport(): "update_floor_setting", "sanitize_user_prompt", "sanitize_model_response", + "stream_sanitize_user_prompt", + "stream_sanitize_model_response", "get_location", "list_locations", ) @@ -8641,6 +9039,12 @@ def test_model_armor_client_transport_session_collision(transport_name): session1 = client1.transport.sanitize_model_response._session session2 = client2.transport.sanitize_model_response._session assert session1 != session2 + session1 = client1.transport.stream_sanitize_user_prompt._session + session2 = client2.transport.stream_sanitize_user_prompt._session + assert session1 != session2 + session1 = client1.transport.stream_sanitize_model_response._session + session2 = client2.transport.stream_sanitize_model_response._session + assert session1 != session2 def test_model_armor_grpc_transport_channel(): diff --git a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase/__init__.py b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase/__init__.py index 0ef7367c5e02..fc97096ed96f 100644 --- a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase/__init__.py +++ b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase/__init__.py @@ -124,6 +124,112 @@ ListExascaleDbStorageVaultsResponse, ) from google.cloud.oracledatabase_v1.types.gi_version import GiVersion +from google.cloud.oracledatabase_v1.types.goldengate_connection import ( + AmazonS3IcebergStorage, + AzureDataLakeStorageIcebergStorage, + CreateGoldengateConnectionRequest, + DeleteGoldengateConnectionRequest, + GetGoldengateConnectionRequest, + GlueIcebergCatalog, + GoldengateAmazonKinesisConnectionProperties, + GoldengateAmazonRedshiftConnectionProperties, + GoldengateAmazonS3ConnectionProperties, + GoldengateAzureDataLakeStorageConnectionProperties, + GoldengateAzureSynapseAnalyticsConnectionProperties, + GoldengateConnection, + GoldengateConnectionProperties, + GoldengateDatabricksConnectionProperties, + GoldengateDb2ConnectionProperties, + GoldengateElasticsearchConnectionProperties, + GoldengateGenericConnectionProperties, + GoldengateGoldengateConnectionProperties, + GoldengateGoogleBigQueryConnectionProperties, + GoldengateGoogleCloudStorageConnectionProperties, + GoldengateGooglePubsubConnectionProperties, + GoldengateHdfsConnectionProperties, + GoldengateIcebergConnectionProperties, + GoldengateJavaMessageServiceConnectionProperties, + GoldengateKafkaConnectionProperties, + GoldengateKafkaSchemaRegistryConnectionProperties, + GoldengateMicrosoftFabricConnectionProperties, + GoldengateMicrosoftSqlserverConnectionProperties, + GoldengateMongodbConnectionProperties, + GoldengateMysqlConnectionProperties, + GoldengateOciObjectStorageConnectionProperties, + GoldengateOracleAIDataPlatformConnectionProperties, + GoldengateOracleConnectionProperties, + GoldengateOracleNosqlConnectionProperties, + GoldengatePostgresqlConnectionProperties, + GoldengateRedisConnectionProperties, + GoldengateSnowflakeConnectionProperties, + GoogleCloudStorageIcebergStorage, + IcebergCatalog, + IcebergStorage, + KafkaBootstrapServer, + ListGoldengateConnectionsRequest, + ListGoldengateConnectionsResponse, + NameValuePair, + NessieIcebergCatalog, + PolarisIcebergCatalog, + RestIcebergCatalog, +) +from google.cloud.oracledatabase_v1.types.goldengate_connection_assignment import ( + CreateGoldengateConnectionAssignmentRequest, + DeleteGoldengateConnectionAssignmentRequest, + GetGoldengateConnectionAssignmentRequest, + GoldengateConnectionAssignment, + GoldengateConnectionAssignmentProperties, + ListGoldengateConnectionAssignmentsRequest, + ListGoldengateConnectionAssignmentsResponse, + TestConnectionAssignmentError, + TestGoldengateConnectionAssignmentRequest, + TestGoldengateConnectionAssignmentResponse, +) +from google.cloud.oracledatabase_v1.types.goldengate_connection_type import ( + GetGoldengateConnectionTypeRequest, + GoldengateConnectionType, + ListGoldengateConnectionTypesRequest, + ListGoldengateConnectionTypesResponse, +) +from google.cloud.oracledatabase_v1.types.goldengate_deployment import ( + CreateGoldengateDeploymentRequest, + DeleteGoldengateDeploymentRequest, + DeploymentDiagnosticData, + GetGoldengateDeploymentRequest, + GoldengateBackupSchedule, + GoldengateDeployment, + GoldengateDeploymentLock, + GoldengateDeploymentProperties, + GoldengateGroupToRolesMapping, + GoldengateMaintenanceConfig, + GoldengateMaintenanceWindow, + GoldengateOggDeployment, + GoldengatePlacement, + IngressIp, + ListGoldengateDeploymentsRequest, + ListGoldengateDeploymentsResponse, + StartGoldengateDeploymentRequest, + StopGoldengateDeploymentRequest, +) +from google.cloud.oracledatabase_v1.types.goldengate_deployment_environment import ( + GetGoldengateDeploymentEnvironmentRequest, + GoldengateDeploymentEnvironment, + ListGoldengateDeploymentEnvironmentsRequest, + ListGoldengateDeploymentEnvironmentsResponse, +) +from google.cloud.oracledatabase_v1.types.goldengate_deployment_type import ( + GetGoldengateDeploymentTypeRequest, + GoldengateDeploymentType, + ListGoldengateDeploymentTypesRequest, + ListGoldengateDeploymentTypesResponse, +) +from google.cloud.oracledatabase_v1.types.goldengate_deployment_version import ( + GetGoldengateDeploymentVersionRequest, + GoldengateDeploymentVersion, + GoldengateDeploymentVersionProperties, + ListGoldengateDeploymentVersionsRequest, + ListGoldengateDeploymentVersionsResponse, +) from google.cloud.oracledatabase_v1.types.location_metadata import LocationMetadata from google.cloud.oracledatabase_v1.types.minor_version import ( ListMinorVersionsRequest, @@ -289,6 +395,98 @@ "ListExascaleDbStorageVaultsRequest", "ListExascaleDbStorageVaultsResponse", "GiVersion", + "AmazonS3IcebergStorage", + "AzureDataLakeStorageIcebergStorage", + "CreateGoldengateConnectionRequest", + "DeleteGoldengateConnectionRequest", + "GetGoldengateConnectionRequest", + "GlueIcebergCatalog", + "GoldengateAmazonKinesisConnectionProperties", + "GoldengateAmazonRedshiftConnectionProperties", + "GoldengateAmazonS3ConnectionProperties", + "GoldengateAzureDataLakeStorageConnectionProperties", + "GoldengateAzureSynapseAnalyticsConnectionProperties", + "GoldengateConnection", + "GoldengateConnectionProperties", + "GoldengateDatabricksConnectionProperties", + "GoldengateDb2ConnectionProperties", + "GoldengateElasticsearchConnectionProperties", + "GoldengateGenericConnectionProperties", + "GoldengateGoldengateConnectionProperties", + "GoldengateGoogleBigQueryConnectionProperties", + "GoldengateGoogleCloudStorageConnectionProperties", + "GoldengateGooglePubsubConnectionProperties", + "GoldengateHdfsConnectionProperties", + "GoldengateIcebergConnectionProperties", + "GoldengateJavaMessageServiceConnectionProperties", + "GoldengateKafkaConnectionProperties", + "GoldengateKafkaSchemaRegistryConnectionProperties", + "GoldengateMicrosoftFabricConnectionProperties", + "GoldengateMicrosoftSqlserverConnectionProperties", + "GoldengateMongodbConnectionProperties", + "GoldengateMysqlConnectionProperties", + "GoldengateOciObjectStorageConnectionProperties", + "GoldengateOracleAIDataPlatformConnectionProperties", + "GoldengateOracleConnectionProperties", + "GoldengateOracleNosqlConnectionProperties", + "GoldengatePostgresqlConnectionProperties", + "GoldengateRedisConnectionProperties", + "GoldengateSnowflakeConnectionProperties", + "GoogleCloudStorageIcebergStorage", + "IcebergCatalog", + "IcebergStorage", + "KafkaBootstrapServer", + "ListGoldengateConnectionsRequest", + "ListGoldengateConnectionsResponse", + "NameValuePair", + "NessieIcebergCatalog", + "PolarisIcebergCatalog", + "RestIcebergCatalog", + "CreateGoldengateConnectionAssignmentRequest", + "DeleteGoldengateConnectionAssignmentRequest", + "GetGoldengateConnectionAssignmentRequest", + "GoldengateConnectionAssignment", + "GoldengateConnectionAssignmentProperties", + "ListGoldengateConnectionAssignmentsRequest", + "ListGoldengateConnectionAssignmentsResponse", + "TestConnectionAssignmentError", + "TestGoldengateConnectionAssignmentRequest", + "TestGoldengateConnectionAssignmentResponse", + "GetGoldengateConnectionTypeRequest", + "GoldengateConnectionType", + "ListGoldengateConnectionTypesRequest", + "ListGoldengateConnectionTypesResponse", + "CreateGoldengateDeploymentRequest", + "DeleteGoldengateDeploymentRequest", + "DeploymentDiagnosticData", + "GetGoldengateDeploymentRequest", + "GoldengateBackupSchedule", + "GoldengateDeployment", + "GoldengateDeploymentLock", + "GoldengateDeploymentProperties", + "GoldengateGroupToRolesMapping", + "GoldengateMaintenanceConfig", + "GoldengateMaintenanceWindow", + "GoldengateOggDeployment", + "GoldengatePlacement", + "IngressIp", + "ListGoldengateDeploymentsRequest", + "ListGoldengateDeploymentsResponse", + "StartGoldengateDeploymentRequest", + "StopGoldengateDeploymentRequest", + "GetGoldengateDeploymentEnvironmentRequest", + "GoldengateDeploymentEnvironment", + "ListGoldengateDeploymentEnvironmentsRequest", + "ListGoldengateDeploymentEnvironmentsResponse", + "GetGoldengateDeploymentTypeRequest", + "GoldengateDeploymentType", + "ListGoldengateDeploymentTypesRequest", + "ListGoldengateDeploymentTypesResponse", + "GetGoldengateDeploymentVersionRequest", + "GoldengateDeploymentVersion", + "GoldengateDeploymentVersionProperties", + "ListGoldengateDeploymentVersionsRequest", + "ListGoldengateDeploymentVersionsResponse", "LocationMetadata", "ListMinorVersionsRequest", "ListMinorVersionsResponse", diff --git a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/__init__.py b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/__init__.py index 6d7061680f24..9ba5e09b5c0f 100644 --- a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/__init__.py +++ b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/__init__.py @@ -117,6 +117,112 @@ ListExascaleDbStorageVaultsResponse, ) from .types.gi_version import GiVersion +from .types.goldengate_connection import ( + AmazonS3IcebergStorage, + AzureDataLakeStorageIcebergStorage, + CreateGoldengateConnectionRequest, + DeleteGoldengateConnectionRequest, + GetGoldengateConnectionRequest, + GlueIcebergCatalog, + GoldengateAmazonKinesisConnectionProperties, + GoldengateAmazonRedshiftConnectionProperties, + GoldengateAmazonS3ConnectionProperties, + GoldengateAzureDataLakeStorageConnectionProperties, + GoldengateAzureSynapseAnalyticsConnectionProperties, + GoldengateConnection, + GoldengateConnectionProperties, + GoldengateDatabricksConnectionProperties, + GoldengateDb2ConnectionProperties, + GoldengateElasticsearchConnectionProperties, + GoldengateGenericConnectionProperties, + GoldengateGoldengateConnectionProperties, + GoldengateGoogleBigQueryConnectionProperties, + GoldengateGoogleCloudStorageConnectionProperties, + GoldengateGooglePubsubConnectionProperties, + GoldengateHdfsConnectionProperties, + GoldengateIcebergConnectionProperties, + GoldengateJavaMessageServiceConnectionProperties, + GoldengateKafkaConnectionProperties, + GoldengateKafkaSchemaRegistryConnectionProperties, + GoldengateMicrosoftFabricConnectionProperties, + GoldengateMicrosoftSqlserverConnectionProperties, + GoldengateMongodbConnectionProperties, + GoldengateMysqlConnectionProperties, + GoldengateOciObjectStorageConnectionProperties, + GoldengateOracleAIDataPlatformConnectionProperties, + GoldengateOracleConnectionProperties, + GoldengateOracleNosqlConnectionProperties, + GoldengatePostgresqlConnectionProperties, + GoldengateRedisConnectionProperties, + GoldengateSnowflakeConnectionProperties, + GoogleCloudStorageIcebergStorage, + IcebergCatalog, + IcebergStorage, + KafkaBootstrapServer, + ListGoldengateConnectionsRequest, + ListGoldengateConnectionsResponse, + NameValuePair, + NessieIcebergCatalog, + PolarisIcebergCatalog, + RestIcebergCatalog, +) +from .types.goldengate_connection_assignment import ( + CreateGoldengateConnectionAssignmentRequest, + DeleteGoldengateConnectionAssignmentRequest, + GetGoldengateConnectionAssignmentRequest, + GoldengateConnectionAssignment, + GoldengateConnectionAssignmentProperties, + ListGoldengateConnectionAssignmentsRequest, + ListGoldengateConnectionAssignmentsResponse, + TestConnectionAssignmentError, + TestGoldengateConnectionAssignmentRequest, + TestGoldengateConnectionAssignmentResponse, +) +from .types.goldengate_connection_type import ( + GetGoldengateConnectionTypeRequest, + GoldengateConnectionType, + ListGoldengateConnectionTypesRequest, + ListGoldengateConnectionTypesResponse, +) +from .types.goldengate_deployment import ( + CreateGoldengateDeploymentRequest, + DeleteGoldengateDeploymentRequest, + DeploymentDiagnosticData, + GetGoldengateDeploymentRequest, + GoldengateBackupSchedule, + GoldengateDeployment, + GoldengateDeploymentLock, + GoldengateDeploymentProperties, + GoldengateGroupToRolesMapping, + GoldengateMaintenanceConfig, + GoldengateMaintenanceWindow, + GoldengateOggDeployment, + GoldengatePlacement, + IngressIp, + ListGoldengateDeploymentsRequest, + ListGoldengateDeploymentsResponse, + StartGoldengateDeploymentRequest, + StopGoldengateDeploymentRequest, +) +from .types.goldengate_deployment_environment import ( + GetGoldengateDeploymentEnvironmentRequest, + GoldengateDeploymentEnvironment, + ListGoldengateDeploymentEnvironmentsRequest, + ListGoldengateDeploymentEnvironmentsResponse, +) +from .types.goldengate_deployment_type import ( + GetGoldengateDeploymentTypeRequest, + GoldengateDeploymentType, + ListGoldengateDeploymentTypesRequest, + ListGoldengateDeploymentTypesResponse, +) +from .types.goldengate_deployment_version import ( + GetGoldengateDeploymentVersionRequest, + GoldengateDeploymentVersion, + GoldengateDeploymentVersionProperties, + ListGoldengateDeploymentVersionsRequest, + ListGoldengateDeploymentVersionsResponse, +) from .types.location_metadata import LocationMetadata from .types.minor_version import ( ListMinorVersionsRequest, @@ -291,6 +397,7 @@ def _get_version(dependency_name): __all__ = ( "OracleDatabaseAsyncClient", "AllConnectionStrings", + "AmazonS3IcebergStorage", "AutonomousDatabase", "AutonomousDatabaseApex", "AutonomousDatabaseBackup", @@ -301,6 +408,7 @@ def _get_version(dependency_name): "AutonomousDatabaseProperties", "AutonomousDatabaseStandbySummary", "AutonomousDbVersion", + "AzureDataLakeStorageIcebergStorage", "CloudAccountDetails", "CloudExadataInfrastructure", "CloudExadataInfrastructureProperties", @@ -313,6 +421,9 @@ def _get_version(dependency_name): "CreateDbSystemRequest", "CreateExadbVmClusterRequest", "CreateExascaleDbStorageVaultRequest", + "CreateGoldengateConnectionAssignmentRequest", + "CreateGoldengateConnectionRequest", + "CreateGoldengateDeploymentRequest", "CreateOdbNetworkRequest", "CreateOdbSubnetRequest", "CustomerContact", @@ -345,8 +456,12 @@ def _get_version(dependency_name): "DeleteDbSystemRequest", "DeleteExadbVmClusterRequest", "DeleteExascaleDbStorageVaultRequest", + "DeleteGoldengateConnectionAssignmentRequest", + "DeleteGoldengateConnectionRequest", + "DeleteGoldengateDeploymentRequest", "DeleteOdbNetworkRequest", "DeleteOdbSubnetRequest", + "DeploymentDiagnosticData", "EncryptionKey", "EncryptionKeyHistoryEntry", "Entitlement", @@ -367,11 +482,71 @@ def _get_version(dependency_name): "GetDbSystemRequest", "GetExadbVmClusterRequest", "GetExascaleDbStorageVaultRequest", + "GetGoldengateConnectionAssignmentRequest", + "GetGoldengateConnectionRequest", + "GetGoldengateConnectionTypeRequest", + "GetGoldengateDeploymentEnvironmentRequest", + "GetGoldengateDeploymentRequest", + "GetGoldengateDeploymentTypeRequest", + "GetGoldengateDeploymentVersionRequest", "GetOdbNetworkRequest", "GetOdbSubnetRequest", "GetPluggableDatabaseRequest", "GiVersion", + "GlueIcebergCatalog", + "GoldengateAmazonKinesisConnectionProperties", + "GoldengateAmazonRedshiftConnectionProperties", + "GoldengateAmazonS3ConnectionProperties", + "GoldengateAzureDataLakeStorageConnectionProperties", + "GoldengateAzureSynapseAnalyticsConnectionProperties", + "GoldengateBackupSchedule", + "GoldengateConnection", + "GoldengateConnectionAssignment", + "GoldengateConnectionAssignmentProperties", + "GoldengateConnectionProperties", + "GoldengateConnectionType", + "GoldengateDatabricksConnectionProperties", + "GoldengateDb2ConnectionProperties", + "GoldengateDeployment", + "GoldengateDeploymentEnvironment", + "GoldengateDeploymentLock", + "GoldengateDeploymentProperties", + "GoldengateDeploymentType", + "GoldengateDeploymentVersion", + "GoldengateDeploymentVersionProperties", + "GoldengateElasticsearchConnectionProperties", + "GoldengateGenericConnectionProperties", + "GoldengateGoldengateConnectionProperties", + "GoldengateGoogleBigQueryConnectionProperties", + "GoldengateGoogleCloudStorageConnectionProperties", + "GoldengateGooglePubsubConnectionProperties", + "GoldengateGroupToRolesMapping", + "GoldengateHdfsConnectionProperties", + "GoldengateIcebergConnectionProperties", + "GoldengateJavaMessageServiceConnectionProperties", + "GoldengateKafkaConnectionProperties", + "GoldengateKafkaSchemaRegistryConnectionProperties", + "GoldengateMaintenanceConfig", + "GoldengateMaintenanceWindow", + "GoldengateMicrosoftFabricConnectionProperties", + "GoldengateMicrosoftSqlserverConnectionProperties", + "GoldengateMongodbConnectionProperties", + "GoldengateMysqlConnectionProperties", + "GoldengateOciObjectStorageConnectionProperties", + "GoldengateOggDeployment", + "GoldengateOracleAIDataPlatformConnectionProperties", + "GoldengateOracleConnectionProperties", + "GoldengateOracleNosqlConnectionProperties", + "GoldengatePlacement", + "GoldengatePostgresqlConnectionProperties", + "GoldengateRedisConnectionProperties", + "GoldengateSnowflakeConnectionProperties", + "GoogleCloudStorageIcebergStorage", + "IcebergCatalog", + "IcebergStorage", "IdentityConnector", + "IngressIp", + "KafkaBootstrapServer", "ListAutonomousDatabaseBackupsRequest", "ListAutonomousDatabaseBackupsResponse", "ListAutonomousDatabaseCharacterSetsRequest", @@ -408,6 +583,20 @@ def _get_version(dependency_name): "ListExascaleDbStorageVaultsResponse", "ListGiVersionsRequest", "ListGiVersionsResponse", + "ListGoldengateConnectionAssignmentsRequest", + "ListGoldengateConnectionAssignmentsResponse", + "ListGoldengateConnectionTypesRequest", + "ListGoldengateConnectionTypesResponse", + "ListGoldengateConnectionsRequest", + "ListGoldengateConnectionsResponse", + "ListGoldengateDeploymentEnvironmentsRequest", + "ListGoldengateDeploymentEnvironmentsResponse", + "ListGoldengateDeploymentTypesRequest", + "ListGoldengateDeploymentTypesResponse", + "ListGoldengateDeploymentVersionsRequest", + "ListGoldengateDeploymentVersionsResponse", + "ListGoldengateDeploymentsRequest", + "ListGoldengateDeploymentsResponse", "ListMinorVersionsRequest", "ListMinorVersionsResponse", "ListOdbNetworksRequest", @@ -419,6 +608,8 @@ def _get_version(dependency_name): "LocationMetadata", "MaintenanceWindow", "MinorVersion", + "NameValuePair", + "NessieIcebergCatalog", "OdbNetwork", "OdbSubnet", "OperationMetadata", @@ -428,16 +619,23 @@ def _get_version(dependency_name): "PluggableDatabaseConnectionStrings", "PluggableDatabaseNodeLevelDetails", "PluggableDatabaseProperties", + "PolarisIcebergCatalog", "RemoveVirtualMachineExadbVmClusterRequest", + "RestIcebergCatalog", "RestartAutonomousDatabaseRequest", "RestoreAutonomousDatabaseRequest", "ScheduledOperationDetails", "SourceConfig", "StartAutonomousDatabaseRequest", + "StartGoldengateDeploymentRequest", "State", "StopAutonomousDatabaseRequest", + "StopGoldengateDeploymentRequest", "StorageSizeDetails", "SwitchoverAutonomousDatabaseRequest", + "TestConnectionAssignmentError", + "TestGoldengateConnectionAssignmentRequest", + "TestGoldengateConnectionAssignmentResponse", "UpdateAutonomousDatabaseRequest", "UpdateExadbVmClusterRequest", ) diff --git a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/gapic_metadata.json b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/gapic_metadata.json index ce858f41ca92..37e347c4472b 100644 --- a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/gapic_metadata.json +++ b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/gapic_metadata.json @@ -40,6 +40,21 @@ "create_exascale_db_storage_vault" ] }, + "CreateGoldengateConnection": { + "methods": [ + "create_goldengate_connection" + ] + }, + "CreateGoldengateConnectionAssignment": { + "methods": [ + "create_goldengate_connection_assignment" + ] + }, + "CreateGoldengateDeployment": { + "methods": [ + "create_goldengate_deployment" + ] + }, "CreateOdbNetwork": { "methods": [ "create_odb_network" @@ -80,6 +95,21 @@ "delete_exascale_db_storage_vault" ] }, + "DeleteGoldengateConnection": { + "methods": [ + "delete_goldengate_connection" + ] + }, + "DeleteGoldengateConnectionAssignment": { + "methods": [ + "delete_goldengate_connection_assignment" + ] + }, + "DeleteGoldengateDeployment": { + "methods": [ + "delete_goldengate_deployment" + ] + }, "DeleteOdbNetwork": { "methods": [ "delete_odb_network" @@ -135,6 +165,41 @@ "get_exascale_db_storage_vault" ] }, + "GetGoldengateConnection": { + "methods": [ + "get_goldengate_connection" + ] + }, + "GetGoldengateConnectionAssignment": { + "methods": [ + "get_goldengate_connection_assignment" + ] + }, + "GetGoldengateConnectionType": { + "methods": [ + "get_goldengate_connection_type" + ] + }, + "GetGoldengateDeployment": { + "methods": [ + "get_goldengate_deployment" + ] + }, + "GetGoldengateDeploymentEnvironment": { + "methods": [ + "get_goldengate_deployment_environment" + ] + }, + "GetGoldengateDeploymentType": { + "methods": [ + "get_goldengate_deployment_type" + ] + }, + "GetGoldengateDeploymentVersion": { + "methods": [ + "get_goldengate_deployment_version" + ] + }, "GetOdbNetwork": { "methods": [ "get_odb_network" @@ -240,6 +305,41 @@ "list_gi_versions" ] }, + "ListGoldengateConnectionAssignments": { + "methods": [ + "list_goldengate_connection_assignments" + ] + }, + "ListGoldengateConnectionTypes": { + "methods": [ + "list_goldengate_connection_types" + ] + }, + "ListGoldengateConnections": { + "methods": [ + "list_goldengate_connections" + ] + }, + "ListGoldengateDeploymentEnvironments": { + "methods": [ + "list_goldengate_deployment_environments" + ] + }, + "ListGoldengateDeploymentTypes": { + "methods": [ + "list_goldengate_deployment_types" + ] + }, + "ListGoldengateDeploymentVersions": { + "methods": [ + "list_goldengate_deployment_versions" + ] + }, + "ListGoldengateDeployments": { + "methods": [ + "list_goldengate_deployments" + ] + }, "ListMinorVersions": { "methods": [ "list_minor_versions" @@ -280,16 +380,31 @@ "start_autonomous_database" ] }, + "StartGoldengateDeployment": { + "methods": [ + "start_goldengate_deployment" + ] + }, "StopAutonomousDatabase": { "methods": [ "stop_autonomous_database" ] }, + "StopGoldengateDeployment": { + "methods": [ + "stop_goldengate_deployment" + ] + }, "SwitchoverAutonomousDatabase": { "methods": [ "switchover_autonomous_database" ] }, + "TestGoldengateConnectionAssignment": { + "methods": [ + "test_goldengate_connection_assignment" + ] + }, "UpdateAutonomousDatabase": { "methods": [ "update_autonomous_database" @@ -335,6 +450,21 @@ "create_exascale_db_storage_vault" ] }, + "CreateGoldengateConnection": { + "methods": [ + "create_goldengate_connection" + ] + }, + "CreateGoldengateConnectionAssignment": { + "methods": [ + "create_goldengate_connection_assignment" + ] + }, + "CreateGoldengateDeployment": { + "methods": [ + "create_goldengate_deployment" + ] + }, "CreateOdbNetwork": { "methods": [ "create_odb_network" @@ -375,6 +505,21 @@ "delete_exascale_db_storage_vault" ] }, + "DeleteGoldengateConnection": { + "methods": [ + "delete_goldengate_connection" + ] + }, + "DeleteGoldengateConnectionAssignment": { + "methods": [ + "delete_goldengate_connection_assignment" + ] + }, + "DeleteGoldengateDeployment": { + "methods": [ + "delete_goldengate_deployment" + ] + }, "DeleteOdbNetwork": { "methods": [ "delete_odb_network" @@ -430,6 +575,41 @@ "get_exascale_db_storage_vault" ] }, + "GetGoldengateConnection": { + "methods": [ + "get_goldengate_connection" + ] + }, + "GetGoldengateConnectionAssignment": { + "methods": [ + "get_goldengate_connection_assignment" + ] + }, + "GetGoldengateConnectionType": { + "methods": [ + "get_goldengate_connection_type" + ] + }, + "GetGoldengateDeployment": { + "methods": [ + "get_goldengate_deployment" + ] + }, + "GetGoldengateDeploymentEnvironment": { + "methods": [ + "get_goldengate_deployment_environment" + ] + }, + "GetGoldengateDeploymentType": { + "methods": [ + "get_goldengate_deployment_type" + ] + }, + "GetGoldengateDeploymentVersion": { + "methods": [ + "get_goldengate_deployment_version" + ] + }, "GetOdbNetwork": { "methods": [ "get_odb_network" @@ -535,6 +715,41 @@ "list_gi_versions" ] }, + "ListGoldengateConnectionAssignments": { + "methods": [ + "list_goldengate_connection_assignments" + ] + }, + "ListGoldengateConnectionTypes": { + "methods": [ + "list_goldengate_connection_types" + ] + }, + "ListGoldengateConnections": { + "methods": [ + "list_goldengate_connections" + ] + }, + "ListGoldengateDeploymentEnvironments": { + "methods": [ + "list_goldengate_deployment_environments" + ] + }, + "ListGoldengateDeploymentTypes": { + "methods": [ + "list_goldengate_deployment_types" + ] + }, + "ListGoldengateDeploymentVersions": { + "methods": [ + "list_goldengate_deployment_versions" + ] + }, + "ListGoldengateDeployments": { + "methods": [ + "list_goldengate_deployments" + ] + }, "ListMinorVersions": { "methods": [ "list_minor_versions" @@ -575,16 +790,31 @@ "start_autonomous_database" ] }, + "StartGoldengateDeployment": { + "methods": [ + "start_goldengate_deployment" + ] + }, "StopAutonomousDatabase": { "methods": [ "stop_autonomous_database" ] }, + "StopGoldengateDeployment": { + "methods": [ + "stop_goldengate_deployment" + ] + }, "SwitchoverAutonomousDatabase": { "methods": [ "switchover_autonomous_database" ] }, + "TestGoldengateConnectionAssignment": { + "methods": [ + "test_goldengate_connection_assignment" + ] + }, "UpdateAutonomousDatabase": { "methods": [ "update_autonomous_database" @@ -630,6 +860,21 @@ "create_exascale_db_storage_vault" ] }, + "CreateGoldengateConnection": { + "methods": [ + "create_goldengate_connection" + ] + }, + "CreateGoldengateConnectionAssignment": { + "methods": [ + "create_goldengate_connection_assignment" + ] + }, + "CreateGoldengateDeployment": { + "methods": [ + "create_goldengate_deployment" + ] + }, "CreateOdbNetwork": { "methods": [ "create_odb_network" @@ -670,6 +915,21 @@ "delete_exascale_db_storage_vault" ] }, + "DeleteGoldengateConnection": { + "methods": [ + "delete_goldengate_connection" + ] + }, + "DeleteGoldengateConnectionAssignment": { + "methods": [ + "delete_goldengate_connection_assignment" + ] + }, + "DeleteGoldengateDeployment": { + "methods": [ + "delete_goldengate_deployment" + ] + }, "DeleteOdbNetwork": { "methods": [ "delete_odb_network" @@ -725,6 +985,41 @@ "get_exascale_db_storage_vault" ] }, + "GetGoldengateConnection": { + "methods": [ + "get_goldengate_connection" + ] + }, + "GetGoldengateConnectionAssignment": { + "methods": [ + "get_goldengate_connection_assignment" + ] + }, + "GetGoldengateConnectionType": { + "methods": [ + "get_goldengate_connection_type" + ] + }, + "GetGoldengateDeployment": { + "methods": [ + "get_goldengate_deployment" + ] + }, + "GetGoldengateDeploymentEnvironment": { + "methods": [ + "get_goldengate_deployment_environment" + ] + }, + "GetGoldengateDeploymentType": { + "methods": [ + "get_goldengate_deployment_type" + ] + }, + "GetGoldengateDeploymentVersion": { + "methods": [ + "get_goldengate_deployment_version" + ] + }, "GetOdbNetwork": { "methods": [ "get_odb_network" @@ -830,6 +1125,41 @@ "list_gi_versions" ] }, + "ListGoldengateConnectionAssignments": { + "methods": [ + "list_goldengate_connection_assignments" + ] + }, + "ListGoldengateConnectionTypes": { + "methods": [ + "list_goldengate_connection_types" + ] + }, + "ListGoldengateConnections": { + "methods": [ + "list_goldengate_connections" + ] + }, + "ListGoldengateDeploymentEnvironments": { + "methods": [ + "list_goldengate_deployment_environments" + ] + }, + "ListGoldengateDeploymentTypes": { + "methods": [ + "list_goldengate_deployment_types" + ] + }, + "ListGoldengateDeploymentVersions": { + "methods": [ + "list_goldengate_deployment_versions" + ] + }, + "ListGoldengateDeployments": { + "methods": [ + "list_goldengate_deployments" + ] + }, "ListMinorVersions": { "methods": [ "list_minor_versions" @@ -870,16 +1200,31 @@ "start_autonomous_database" ] }, + "StartGoldengateDeployment": { + "methods": [ + "start_goldengate_deployment" + ] + }, "StopAutonomousDatabase": { "methods": [ "stop_autonomous_database" ] }, + "StopGoldengateDeployment": { + "methods": [ + "stop_goldengate_deployment" + ] + }, "SwitchoverAutonomousDatabase": { "methods": [ "switchover_autonomous_database" ] }, + "TestGoldengateConnectionAssignment": { + "methods": [ + "test_goldengate_connection_assignment" + ] + }, "UpdateAutonomousDatabase": { "methods": [ "update_autonomous_database" diff --git a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/async_client.py b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/async_client.py index 04b8ccf3ce01..0ea413a24cf3 100644 --- a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/async_client.py +++ b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/async_client.py @@ -72,6 +72,13 @@ exadb_vm_cluster, exascale_db_storage_vault, gi_version, + goldengate_connection, + goldengate_connection_assignment, + goldengate_connection_type, + goldengate_deployment, + goldengate_deployment_environment, + goldengate_deployment_type, + goldengate_deployment_version, minor_version, odb_network, odb_subnet, @@ -89,6 +96,15 @@ from google.cloud.oracledatabase_v1.types import ( exascale_db_storage_vault as gco_exascale_db_storage_vault, ) +from google.cloud.oracledatabase_v1.types import ( + goldengate_connection as gco_goldengate_connection, +) +from google.cloud.oracledatabase_v1.types import ( + goldengate_connection_assignment as gco_goldengate_connection_assignment, +) +from google.cloud.oracledatabase_v1.types import ( + goldengate_deployment as gco_goldengate_deployment, +) from google.cloud.oracledatabase_v1.types import odb_network as gco_odb_network from google.cloud.oracledatabase_v1.types import odb_subnet as gco_odb_subnet @@ -194,6 +210,48 @@ class OracleDatabaseAsyncClient: ) gi_version_path = staticmethod(OracleDatabaseClient.gi_version_path) parse_gi_version_path = staticmethod(OracleDatabaseClient.parse_gi_version_path) + goldengate_connection_path = staticmethod( + OracleDatabaseClient.goldengate_connection_path + ) + parse_goldengate_connection_path = staticmethod( + OracleDatabaseClient.parse_goldengate_connection_path + ) + goldengate_connection_assignment_path = staticmethod( + OracleDatabaseClient.goldengate_connection_assignment_path + ) + parse_goldengate_connection_assignment_path = staticmethod( + OracleDatabaseClient.parse_goldengate_connection_assignment_path + ) + goldengate_connection_type_path = staticmethod( + OracleDatabaseClient.goldengate_connection_type_path + ) + parse_goldengate_connection_type_path = staticmethod( + OracleDatabaseClient.parse_goldengate_connection_type_path + ) + goldengate_deployment_path = staticmethod( + OracleDatabaseClient.goldengate_deployment_path + ) + parse_goldengate_deployment_path = staticmethod( + OracleDatabaseClient.parse_goldengate_deployment_path + ) + goldengate_deployment_environment_path = staticmethod( + OracleDatabaseClient.goldengate_deployment_environment_path + ) + parse_goldengate_deployment_environment_path = staticmethod( + OracleDatabaseClient.parse_goldengate_deployment_environment_path + ) + goldengate_deployment_type_path = staticmethod( + OracleDatabaseClient.goldengate_deployment_type_path + ) + parse_goldengate_deployment_type_path = staticmethod( + OracleDatabaseClient.parse_goldengate_deployment_type_path + ) + goldengate_deployment_version_path = staticmethod( + OracleDatabaseClient.goldengate_deployment_version_path + ) + parse_goldengate_deployment_version_path = staticmethod( + OracleDatabaseClient.parse_goldengate_deployment_version_path + ) minor_version_path = staticmethod(OracleDatabaseClient.minor_version_path) parse_minor_version_path = staticmethod( OracleDatabaseClient.parse_minor_version_path @@ -208,6 +266,10 @@ class OracleDatabaseAsyncClient: parse_pluggable_database_path = staticmethod( OracleDatabaseClient.parse_pluggable_database_path ) + secret_version_path = staticmethod(OracleDatabaseClient.secret_version_path) + parse_secret_version_path = staticmethod( + OracleDatabaseClient.parse_secret_version_path + ) common_billing_account_path = staticmethod( OracleDatabaseClient.common_billing_account_path ) @@ -4018,7 +4080,6 @@ async def sample_switchover_autonomous_database(): # Initialize request argument(s) request = oracledatabase_v1.SwitchoverAutonomousDatabaseRequest( name="name_value", - peer_autonomous_database="peer_autonomous_database_value", ) # Make the request @@ -4044,8 +4105,10 @@ async def sample_switchover_autonomous_database(): on the ``request`` instance; if ``request`` is provided, this should not be set. peer_autonomous_database (:class:`str`): - Required. The peer database name to - switch over to. + Optional. The peer database name to + switch over to. Required for + cross-region standby, and must be + omitted for in-region Data Guard. This corresponds to the ``peer_autonomous_database`` field on the ``request`` instance; if ``request`` is provided, this @@ -4158,7 +4221,6 @@ async def sample_failover_autonomous_database(): # Initialize request argument(s) request = oracledatabase_v1.FailoverAutonomousDatabaseRequest( name="name_value", - peer_autonomous_database="peer_autonomous_database_value", ) # Make the request @@ -4184,8 +4246,10 @@ async def sample_failover_autonomous_database(): on the ``request`` instance; if ``request`` is provided, this should not be set. peer_autonomous_database (:class:`str`): - Required. The peer database name to - fail over to. + Optional. The peer database name to + fail over to. Required for cross-region + standby, and must be omitted for + in-region Data Guard. This corresponds to the ``peer_autonomous_database`` field on the ``request`` instance; if ``request`` is provided, this @@ -7852,16 +7916,19 @@ async def sample_delete_db_system(): # Done; return the response. return response - async def list_db_versions( + async def list_goldengate_deployments( self, - request: Optional[Union[db_version.ListDbVersionsRequest, dict]] = None, + request: Optional[ + Union[goldengate_deployment.ListGoldengateDeploymentsRequest, dict] + ] = None, *, parent: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> pagers.ListDbVersionsAsyncPager: - r"""List DbVersions for the given project and location. + ) -> pagers.ListGoldengateDeploymentsAsyncPager: + r"""Lists all the GoldengateDeployments for the given + project and location. .. code-block:: python @@ -7874,29 +7941,30 @@ async def list_db_versions( # https://googleapis.dev/python/google-api-core/latest/client_options.html from google.cloud import oracledatabase_v1 - async def sample_list_db_versions(): + async def sample_list_goldengate_deployments(): # Create a client client = oracledatabase_v1.OracleDatabaseAsyncClient() # Initialize request argument(s) - request = oracledatabase_v1.ListDbVersionsRequest( + request = oracledatabase_v1.ListGoldengateDeploymentsRequest( parent="parent_value", ) # Make the request - page_result = client.list_db_versions(request=request) + page_result = client.list_goldengate_deployments(request=request) # Handle the response async for response in page_result: print(response) Args: - request (Optional[Union[google.cloud.oracledatabase_v1.types.ListDbVersionsRequest, dict]]): - The request object. The request for ``DbVersions.List``. + request (Optional[Union[google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentsRequest, dict]]): + The request object. The request for ``GoldengateDeployment.List``. parent (:class:`str`): - Required. The parent value for the - DbVersion resource with the format: - projects/{project}/locations/{location} + Required. The parent value for + GoldengateDeployments in the following + format: + projects/{project}/locations/{location}. This corresponds to the ``parent`` field on the ``request`` instance; if ``request`` is provided, this @@ -7910,8 +7978,8 @@ async def sample_list_db_versions(): be of type `bytes`. Returns: - google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbVersionsAsyncPager: - The response for DbVersions.List. + google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateDeploymentsAsyncPager: + The response for GoldengateDeployment.List. Iterating over this object will yield results and resolve additional pages automatically. @@ -7932,8 +8000,10 @@ async def sample_list_db_versions(): # - Use the request object if provided (there's no risk of modifying the input as # there are no flattened fields), or create one. - if not isinstance(request, db_version.ListDbVersionsRequest): - request = db_version.ListDbVersionsRequest(request) + if not isinstance( + request, goldengate_deployment.ListGoldengateDeploymentsRequest + ): + request = goldengate_deployment.ListGoldengateDeploymentsRequest(request) # If we have keyword arguments corresponding to fields on the # request, apply these. @@ -7943,7 +8013,7 @@ async def sample_list_db_versions(): # Wrap the RPC method; this adds retry and timeout information, # and friendly error handling. rpc = self._client._transport._wrapped_methods[ - self._client._transport.list_db_versions + self._client._transport.list_goldengate_deployments ] # Certain fields should be provided within the metadata header; @@ -7965,7 +8035,7 @@ async def sample_list_db_versions(): # This method is paged; wrap the response in a pager, which provides # an `__aiter__` convenience method. - response = pagers.ListDbVersionsAsyncPager( + response = pagers.ListGoldengateDeploymentsAsyncPager( method=rpc, request=request, response=response, @@ -7977,19 +8047,138 @@ async def sample_list_db_versions(): # Done; return the response. return response - async def list_database_character_sets( + async def get_goldengate_deployment( self, request: Optional[ - Union[database_character_set.ListDatabaseCharacterSetsRequest, dict] + Union[goldengate_deployment.GetGoldengateDeploymentRequest, dict] + ] = None, + *, + name: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> goldengate_deployment.GoldengateDeployment: + r"""Gets details of a single GoldengateDeployment. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + async def sample_get_goldengate_deployment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.GetGoldengateDeploymentRequest( + name="name_value", + ) + + # Make the request + response = await client.get_goldengate_deployment(request=request) + + # Handle the response + print(response) + + Args: + request (Optional[Union[google.cloud.oracledatabase_v1.types.GetGoldengateDeploymentRequest, dict]]): + The request object. The request for ``GoldengateDeployment.Get``. + name (:class:`str`): + Required. The name of the GoldengateDeployment in the + following format: + projects/{project}/locations/{location}/goldengateDeployments/{goldengate_deployment}. + + This corresponds to the ``name`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.types.GoldengateDeployment: + GoldengateDeployment Goldengate + Deployment resource model. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [name] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, goldengate_deployment.GetGoldengateDeploymentRequest + ): + request = goldengate_deployment.GetGoldengateDeploymentRequest(request) + + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if name is not None: + request.name = name + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.get_goldengate_deployment + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)), + ) + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = await rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + async def create_goldengate_deployment( + self, + request: Optional[ + Union[gco_goldengate_deployment.CreateGoldengateDeploymentRequest, dict] ] = None, *, parent: Optional[str] = None, + goldengate_deployment: Optional[ + gco_goldengate_deployment.GoldengateDeployment + ] = None, + goldengate_deployment_id: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> pagers.ListDatabaseCharacterSetsAsyncPager: - r"""List DatabaseCharacterSets for the given project and - location. + ) -> operation_async.AsyncOperation: + r"""Creates a new GoldengateDeployment in a given project + and location. .. code-block:: python @@ -8002,34 +8191,62 @@ async def list_database_character_sets( # https://googleapis.dev/python/google-api-core/latest/client_options.html from google.cloud import oracledatabase_v1 - async def sample_list_database_character_sets(): + async def sample_create_goldengate_deployment(): # Create a client client = oracledatabase_v1.OracleDatabaseAsyncClient() # Initialize request argument(s) - request = oracledatabase_v1.ListDatabaseCharacterSetsRequest( + goldengate_deployment = oracledatabase_v1.GoldengateDeployment() + goldengate_deployment.properties.deployment_type = "deployment_type_value" + goldengate_deployment.properties.ogg_data.admin_password = "admin_password_value" + goldengate_deployment.properties.ogg_data.deployment = "deployment_value" + goldengate_deployment.properties.ogg_data.admin_username = "admin_username_value" + goldengate_deployment.odb_subnet = "odb_subnet_value" + goldengate_deployment.display_name = "display_name_value" + + request = oracledatabase_v1.CreateGoldengateDeploymentRequest( parent="parent_value", + goldengate_deployment_id="goldengate_deployment_id_value", + goldengate_deployment=goldengate_deployment, ) # Make the request - page_result = client.list_database_character_sets(request=request) + operation = await client.create_goldengate_deployment(request=request) + + print("Waiting for operation to complete...") + + response = await operation.result() # Handle the response - async for response in page_result: - print(response) + print(response) Args: - request (Optional[Union[google.cloud.oracledatabase_v1.types.ListDatabaseCharacterSetsRequest, dict]]): - The request object. The request for ``DatabaseCharacterSet.List``. + request (Optional[Union[google.cloud.oracledatabase_v1.types.CreateGoldengateDeploymentRequest, dict]]): + The request object. The request for ``GoldengateDeployment.Create``. parent (:class:`str`): - Required. The parent value for - DatabaseCharacterSets in the following + Required. The value for parent of the + GoldengateDeployment in the following format: projects/{project}/locations/{location}. This corresponds to the ``parent`` field on the ``request`` instance; if ``request`` is provided, this should not be set. + goldengate_deployment (:class:`google.cloud.oracledatabase_v1.types.GoldengateDeployment`): + Required. The resource being created. + This corresponds to the ``goldengate_deployment`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + goldengate_deployment_id (:class:`str`): + Required. The ID of the GoldengateDeployment to create. + This value is restricted to + (^\ `a-z <[a-z0-9-]{0,61}[a-z0-9]>`__?$) and must be a + maximum of 63 characters in length. The value must start + with a letter and end with a letter or a number. + + This corresponds to the ``goldengate_deployment_id`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, should be retried. timeout (float): The timeout for this request. @@ -8039,17 +8256,19 @@ async def sample_list_database_character_sets(): be of type `bytes`. Returns: - google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDatabaseCharacterSetsAsyncPager: - The response for DatabaseCharacterSet.List. + google.api_core.operation_async.AsyncOperation: + An object representing a long-running operation. - Iterating over this object will yield results and - resolve additional pages automatically. + The result type for the operation will be + :class:`google.cloud.oracledatabase_v1.types.GoldengateDeployment` + GoldengateDeployment Goldengate Deployment resource + model. """ # Create or coerce a protobuf request object. # - Quick check: If we got a request object, we should *not* have # gotten any keyword arguments that map to the request. - flattened_params = [parent] + flattened_params = [parent, goldengate_deployment, goldengate_deployment_id] has_flattened_params = ( len([param for param in flattened_params if param is not None]) > 0 ) @@ -8062,19 +8281,25 @@ async def sample_list_database_character_sets(): # - Use the request object if provided (there's no risk of modifying the input as # there are no flattened fields), or create one. if not isinstance( - request, database_character_set.ListDatabaseCharacterSetsRequest + request, gco_goldengate_deployment.CreateGoldengateDeploymentRequest ): - request = database_character_set.ListDatabaseCharacterSetsRequest(request) + request = gco_goldengate_deployment.CreateGoldengateDeploymentRequest( + request + ) # If we have keyword arguments corresponding to fields on the # request, apply these. if parent is not None: request.parent = parent + if goldengate_deployment is not None: + request.goldengate_deployment = goldengate_deployment + if goldengate_deployment_id is not None: + request.goldengate_deployment_id = goldengate_deployment_id # Wrap the RPC method; this adds retry and timeout information, # and friendly error handling. rpc = self._client._transport._wrapped_methods[ - self._client._transport.list_database_character_sets + self._client._transport.create_goldengate_deployment ] # Certain fields should be provided within the metadata header; @@ -8094,12 +8319,2947 @@ async def sample_list_database_character_sets(): metadata=metadata, ) - # This method is paged; wrap the response in a pager, which provides - # an `__aiter__` convenience method. - response = pagers.ListDatabaseCharacterSetsAsyncPager( - method=rpc, - request=request, - response=response, + # Wrap the response in an operation future. + response = operation_async.from_gapic( + response, + self._client._transport.operations_client, + gco_goldengate_deployment.GoldengateDeployment, + metadata_type=oracledatabase.OperationMetadata, + ) + + # Done; return the response. + return response + + async def delete_goldengate_deployment( + self, + request: Optional[ + Union[goldengate_deployment.DeleteGoldengateDeploymentRequest, dict] + ] = None, + *, + name: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operation_async.AsyncOperation: + r"""Deletes a single GoldengateDeployment. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + async def sample_delete_goldengate_deployment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.DeleteGoldengateDeploymentRequest( + name="name_value", + ) + + # Make the request + operation = await client.delete_goldengate_deployment(request=request) + + print("Waiting for operation to complete...") + + response = await operation.result() + + # Handle the response + print(response) + + Args: + request (Optional[Union[google.cloud.oracledatabase_v1.types.DeleteGoldengateDeploymentRequest, dict]]): + The request object. The request for ``GoldengateDeployment.Delete``. + name (:class:`str`): + Required. The name of the GoldengateDeployment in the + following format: + projects/{project}/locations/{location}/goldengateDeployments/{goldengate_deployment}. + + This corresponds to the ``name`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.api_core.operation_async.AsyncOperation: + An object representing a long-running operation. + + The result type for the operation will be :class:`google.protobuf.empty_pb2.Empty` A generic empty message that you can re-use to avoid defining duplicated + empty messages in your APIs. A typical example is to + use it as the request or the response type of an API + method. For instance: + + service Foo { + rpc Bar(google.protobuf.Empty) returns + (google.protobuf.Empty); + + } + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [name] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, goldengate_deployment.DeleteGoldengateDeploymentRequest + ): + request = goldengate_deployment.DeleteGoldengateDeploymentRequest(request) + + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if name is not None: + request.name = name + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.delete_goldengate_deployment + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)), + ) + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = await rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Wrap the response in an operation future. + response = operation_async.from_gapic( + response, + self._client._transport.operations_client, + empty_pb2.Empty, + metadata_type=oracledatabase.OperationMetadata, + ) + + # Done; return the response. + return response + + async def stop_goldengate_deployment( + self, + request: Optional[ + Union[goldengate_deployment.StopGoldengateDeploymentRequest, dict] + ] = None, + *, + name: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operation_async.AsyncOperation: + r"""Stops a single GoldengateDeployment. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + async def sample_stop_goldengate_deployment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.StopGoldengateDeploymentRequest( + name="name_value", + ) + + # Make the request + operation = await client.stop_goldengate_deployment(request=request) + + print("Waiting for operation to complete...") + + response = await operation.result() + + # Handle the response + print(response) + + Args: + request (Optional[Union[google.cloud.oracledatabase_v1.types.StopGoldengateDeploymentRequest, dict]]): + The request object. The request for ``GoldengateDeployment.Stop``. + name (:class:`str`): + Required. The name of the Goldengate Deployment in the + following format: + projects/{project}/locations/{location}/goldengateDeployments/{goldengate_deployment}. + + This corresponds to the ``name`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.api_core.operation_async.AsyncOperation: + An object representing a long-running operation. + + The result type for the operation will be + :class:`google.cloud.oracledatabase_v1.types.GoldengateDeployment` + GoldengateDeployment Goldengate Deployment resource + model. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [name] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, goldengate_deployment.StopGoldengateDeploymentRequest + ): + request = goldengate_deployment.StopGoldengateDeploymentRequest(request) + + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if name is not None: + request.name = name + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.stop_goldengate_deployment + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)), + ) + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = await rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Wrap the response in an operation future. + response = operation_async.from_gapic( + response, + self._client._transport.operations_client, + goldengate_deployment.GoldengateDeployment, + metadata_type=oracledatabase.OperationMetadata, + ) + + # Done; return the response. + return response + + async def start_goldengate_deployment( + self, + request: Optional[ + Union[goldengate_deployment.StartGoldengateDeploymentRequest, dict] + ] = None, + *, + name: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operation_async.AsyncOperation: + r"""Starts a single GoldengateDeployment. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + async def sample_start_goldengate_deployment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.StartGoldengateDeploymentRequest( + name="name_value", + ) + + # Make the request + operation = await client.start_goldengate_deployment(request=request) + + print("Waiting for operation to complete...") + + response = await operation.result() + + # Handle the response + print(response) + + Args: + request (Optional[Union[google.cloud.oracledatabase_v1.types.StartGoldengateDeploymentRequest, dict]]): + The request object. The request for ``GoldengateDeployment.Start``. + name (:class:`str`): + Required. The name of the Goldengate Deployment in the + following format: + projects/{project}/locations/{location}/goldengateDeployments/{goldengate_deployment}. + + This corresponds to the ``name`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.api_core.operation_async.AsyncOperation: + An object representing a long-running operation. + + The result type for the operation will be + :class:`google.cloud.oracledatabase_v1.types.GoldengateDeployment` + GoldengateDeployment Goldengate Deployment resource + model. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [name] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, goldengate_deployment.StartGoldengateDeploymentRequest + ): + request = goldengate_deployment.StartGoldengateDeploymentRequest(request) + + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if name is not None: + request.name = name + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.start_goldengate_deployment + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)), + ) + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = await rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Wrap the response in an operation future. + response = operation_async.from_gapic( + response, + self._client._transport.operations_client, + goldengate_deployment.GoldengateDeployment, + metadata_type=oracledatabase.OperationMetadata, + ) + + # Done; return the response. + return response + + async def list_goldengate_connections( + self, + request: Optional[ + Union[goldengate_connection.ListGoldengateConnectionsRequest, dict] + ] = None, + *, + parent: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> pagers.ListGoldengateConnectionsAsyncPager: + r"""Lists all the GoldengateConnections for the given + project and location. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + async def sample_list_goldengate_connections(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListGoldengateConnectionsRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_goldengate_connections(request=request) + + # Handle the response + async for response in page_result: + print(response) + + Args: + request (Optional[Union[google.cloud.oracledatabase_v1.types.ListGoldengateConnectionsRequest, dict]]): + The request object. The request for ``GoldengateConnection.List``. + parent (:class:`str`): + Required. The parent value for + GoldengateConnections in the following + format: + projects/{project}/locations/{location}. + + This corresponds to the ``parent`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateConnectionsAsyncPager: + The response for GoldengateConnection.List. + + Iterating over this object will yield results and + resolve additional pages automatically. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [parent] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, goldengate_connection.ListGoldengateConnectionsRequest + ): + request = goldengate_connection.ListGoldengateConnectionsRequest(request) + + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if parent is not None: + request.parent = parent + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.list_goldengate_connections + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)), + ) + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = await rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # This method is paged; wrap the response in a pager, which provides + # an `__aiter__` convenience method. + response = pagers.ListGoldengateConnectionsAsyncPager( + method=rpc, + request=request, + response=response, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + async def get_goldengate_connection( + self, + request: Optional[ + Union[goldengate_connection.GetGoldengateConnectionRequest, dict] + ] = None, + *, + name: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> goldengate_connection.GoldengateConnection: + r"""Gets details of a single GoldengateConnection. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + async def sample_get_goldengate_connection(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.GetGoldengateConnectionRequest( + name="name_value", + ) + + # Make the request + response = await client.get_goldengate_connection(request=request) + + # Handle the response + print(response) + + Args: + request (Optional[Union[google.cloud.oracledatabase_v1.types.GetGoldengateConnectionRequest, dict]]): + The request object. The request for ``GoldengateConnection.Get``. + name (:class:`str`): + Required. The name of the GoldengateConnection in the + following format: + projects/{project}/locations/{location}/goldengateConnections/{goldengate_connection}. + + This corresponds to the ``name`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.types.GoldengateConnection: + Details of the GoldengateConnection + resource. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [name] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, goldengate_connection.GetGoldengateConnectionRequest + ): + request = goldengate_connection.GetGoldengateConnectionRequest(request) + + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if name is not None: + request.name = name + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.get_goldengate_connection + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)), + ) + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = await rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + async def create_goldengate_connection( + self, + request: Optional[ + Union[gco_goldengate_connection.CreateGoldengateConnectionRequest, dict] + ] = None, + *, + parent: Optional[str] = None, + goldengate_connection: Optional[ + gco_goldengate_connection.GoldengateConnection + ] = None, + goldengate_connection_id: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operation_async.AsyncOperation: + r"""Creates a new GoldengateConnection in a given project + and location. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + async def sample_create_goldengate_connection(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + goldengate_connection = oracledatabase_v1.GoldengateConnection() + goldengate_connection.properties.oracle_connection_properties.password = "password_value" + goldengate_connection.properties.connection_type = "ICEBERG" + goldengate_connection.properties.display_name = "display_name_value" + + request = oracledatabase_v1.CreateGoldengateConnectionRequest( + parent="parent_value", + goldengate_connection_id="goldengate_connection_id_value", + goldengate_connection=goldengate_connection, + ) + + # Make the request + operation = await client.create_goldengate_connection(request=request) + + print("Waiting for operation to complete...") + + response = await operation.result() + + # Handle the response + print(response) + + Args: + request (Optional[Union[google.cloud.oracledatabase_v1.types.CreateGoldengateConnectionRequest, dict]]): + The request object. The request for ``GoldengateConnection.Create``. + parent (:class:`str`): + Required. The value for parent of the + GoldengateConnection in the following + format: + projects/{project}/locations/{location}. + + This corresponds to the ``parent`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + goldengate_connection (:class:`google.cloud.oracledatabase_v1.types.GoldengateConnection`): + Required. The resource being created. + This corresponds to the ``goldengate_connection`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + goldengate_connection_id (:class:`str`): + Required. The ID of the GoldengateConnection to create. + This value is restricted to + (^\ `a-z <[a-z0-9-]{0,61}[a-z0-9]>`__?$) and must be a + maximum of 63 characters in length. The value must start + with a letter and end with a letter or a number. + + This corresponds to the ``goldengate_connection_id`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.api_core.operation_async.AsyncOperation: + An object representing a long-running operation. + + The result type for the operation will be + :class:`google.cloud.oracledatabase_v1.types.GoldengateConnection` + Details of the GoldengateConnection resource. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [parent, goldengate_connection, goldengate_connection_id] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, gco_goldengate_connection.CreateGoldengateConnectionRequest + ): + request = gco_goldengate_connection.CreateGoldengateConnectionRequest( + request + ) + + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if parent is not None: + request.parent = parent + if goldengate_connection is not None: + request.goldengate_connection = goldengate_connection + if goldengate_connection_id is not None: + request.goldengate_connection_id = goldengate_connection_id + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.create_goldengate_connection + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)), + ) + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = await rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Wrap the response in an operation future. + response = operation_async.from_gapic( + response, + self._client._transport.operations_client, + gco_goldengate_connection.GoldengateConnection, + metadata_type=oracledatabase.OperationMetadata, + ) + + # Done; return the response. + return response + + async def delete_goldengate_connection( + self, + request: Optional[ + Union[goldengate_connection.DeleteGoldengateConnectionRequest, dict] + ] = None, + *, + name: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operation_async.AsyncOperation: + r"""Deletes a single GoldengateConnection. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + async def sample_delete_goldengate_connection(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.DeleteGoldengateConnectionRequest( + name="name_value", + ) + + # Make the request + operation = await client.delete_goldengate_connection(request=request) + + print("Waiting for operation to complete...") + + response = await operation.result() + + # Handle the response + print(response) + + Args: + request (Optional[Union[google.cloud.oracledatabase_v1.types.DeleteGoldengateConnectionRequest, dict]]): + The request object. The request for ``GoldengateConnection.Delete``. + name (:class:`str`): + Required. The name of the GoldengateConnection in the + following format: + projects/{project}/locations/{location}/goldengateConnections/{goldengate_connection}. + + This corresponds to the ``name`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.api_core.operation_async.AsyncOperation: + An object representing a long-running operation. + + The result type for the operation will be :class:`google.protobuf.empty_pb2.Empty` A generic empty message that you can re-use to avoid defining duplicated + empty messages in your APIs. A typical example is to + use it as the request or the response type of an API + method. For instance: + + service Foo { + rpc Bar(google.protobuf.Empty) returns + (google.protobuf.Empty); + + } + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [name] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, goldengate_connection.DeleteGoldengateConnectionRequest + ): + request = goldengate_connection.DeleteGoldengateConnectionRequest(request) + + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if name is not None: + request.name = name + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.delete_goldengate_connection + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)), + ) + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = await rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Wrap the response in an operation future. + response = operation_async.from_gapic( + response, + self._client._transport.operations_client, + empty_pb2.Empty, + metadata_type=oracledatabase.OperationMetadata, + ) + + # Done; return the response. + return response + + async def get_goldengate_deployment_version( + self, + request: Optional[ + Union[ + goldengate_deployment_version.GetGoldengateDeploymentVersionRequest, + dict, + ] + ] = None, + *, + name: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> goldengate_deployment_version.GoldengateDeploymentVersion: + r"""Gets details of a single GoldengateDeploymentVersion. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + async def sample_get_goldengate_deployment_version(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.GetGoldengateDeploymentVersionRequest( + name="name_value", + ) + + # Make the request + response = await client.get_goldengate_deployment_version(request=request) + + # Handle the response + print(response) + + Args: + request (Optional[Union[google.cloud.oracledatabase_v1.types.GetGoldengateDeploymentVersionRequest, dict]]): + The request object. Message for getting a + GoldengateDeploymentVersion. + name (:class:`str`): + Required. The name of the GoldengateDeploymentVersion to + retrieve. Format: + projects/{project}/locations/{location}/goldengateDeploymentVersions/{goldengate_deployment_version} + + This corresponds to the ``name`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.types.GoldengateDeploymentVersion: + Details of the Goldengate Deployment + Version resource. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [name] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, goldengate_deployment_version.GetGoldengateDeploymentVersionRequest + ): + request = ( + goldengate_deployment_version.GetGoldengateDeploymentVersionRequest( + request + ) + ) + + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if name is not None: + request.name = name + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.get_goldengate_deployment_version + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)), + ) + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = await rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + async def list_goldengate_deployment_versions( + self, + request: Optional[ + Union[ + goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest, + dict, + ] + ] = None, + *, + parent: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> pagers.ListGoldengateDeploymentVersionsAsyncPager: + r"""Lists GoldengateDeploymentVersions in a given project + and location. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + async def sample_list_goldengate_deployment_versions(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListGoldengateDeploymentVersionsRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_goldengate_deployment_versions(request=request) + + # Handle the response + async for response in page_result: + print(response) + + Args: + request (Optional[Union[google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentVersionsRequest, dict]]): + The request object. Message for listing + GoldengateDeploymentVersions. + parent (:class:`str`): + Required. Parent value for + ListGoldengateDeploymentVersionsRequest + Format: + projects/{project}/locations/{location} + + This corresponds to the ``parent`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateDeploymentVersionsAsyncPager: + Message for response to listing + GoldengateDeploymentVersions + Iterating over this object will yield + results and resolve additional pages + automatically. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [parent] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, + goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest, + ): + request = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest( + request + ) + ) + + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if parent is not None: + request.parent = parent + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.list_goldengate_deployment_versions + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)), + ) + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = await rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # This method is paged; wrap the response in a pager, which provides + # an `__aiter__` convenience method. + response = pagers.ListGoldengateDeploymentVersionsAsyncPager( + method=rpc, + request=request, + response=response, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + async def get_goldengate_deployment_type( + self, + request: Optional[ + Union[goldengate_deployment_type.GetGoldengateDeploymentTypeRequest, dict] + ] = None, + *, + name: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> goldengate_deployment_type.GoldengateDeploymentType: + r"""Gets details of a single GoldenGateDeploymentType. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + async def sample_get_goldengate_deployment_type(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.GetGoldengateDeploymentTypeRequest( + name="name_value", + ) + + # Make the request + response = await client.get_goldengate_deployment_type(request=request) + + # Handle the response + print(response) + + Args: + request (Optional[Union[google.cloud.oracledatabase_v1.types.GetGoldengateDeploymentTypeRequest, dict]]): + The request object. Message for getting a + GoldengateDeploymentType. + name (:class:`str`): + Required. The name of the GoldengateDeploymentType to + retrieve. Format: + projects/{project}/locations/{location}/goldengateDeploymentTypes/{goldengate_deployment_type} + + This corresponds to the ``name`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.types.GoldengateDeploymentType: + Details of the Goldengate Deployment + Type resource. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [name] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, goldengate_deployment_type.GetGoldengateDeploymentTypeRequest + ): + request = goldengate_deployment_type.GetGoldengateDeploymentTypeRequest( + request + ) + + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if name is not None: + request.name = name + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.get_goldengate_deployment_type + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)), + ) + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = await rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + async def list_goldengate_deployment_types( + self, + request: Optional[ + Union[goldengate_deployment_type.ListGoldengateDeploymentTypesRequest, dict] + ] = None, + *, + parent: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> pagers.ListGoldengateDeploymentTypesAsyncPager: + r"""Lists GoldenGateDeploymentTypes in a given project + and location. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + async def sample_list_goldengate_deployment_types(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListGoldengateDeploymentTypesRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_goldengate_deployment_types(request=request) + + # Handle the response + async for response in page_result: + print(response) + + Args: + request (Optional[Union[google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentTypesRequest, dict]]): + The request object. Message for listing + GoldengateDeploymentTypes. + parent (:class:`str`): + Required. The parent resource. + Format: + projects/{project}/locations/{location} + + This corresponds to the ``parent`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateDeploymentTypesAsyncPager: + Message for response to listing + GoldengateDeploymentTypes + Iterating over this object will yield + results and resolve additional pages + automatically. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [parent] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, goldengate_deployment_type.ListGoldengateDeploymentTypesRequest + ): + request = goldengate_deployment_type.ListGoldengateDeploymentTypesRequest( + request + ) + + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if parent is not None: + request.parent = parent + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.list_goldengate_deployment_types + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)), + ) + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = await rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # This method is paged; wrap the response in a pager, which provides + # an `__aiter__` convenience method. + response = pagers.ListGoldengateDeploymentTypesAsyncPager( + method=rpc, + request=request, + response=response, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + async def get_goldengate_deployment_environment( + self, + request: Optional[ + Union[ + goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest, + dict, + ] + ] = None, + *, + name: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> goldengate_deployment_environment.GoldengateDeploymentEnvironment: + r"""Gets details of a single + GoldengateDeploymentEnvironment. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + async def sample_get_goldengate_deployment_environment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.GetGoldengateDeploymentEnvironmentRequest( + name="name_value", + ) + + # Make the request + response = await client.get_goldengate_deployment_environment(request=request) + + # Handle the response + print(response) + + Args: + request (Optional[Union[google.cloud.oracledatabase_v1.types.GetGoldengateDeploymentEnvironmentRequest, dict]]): + The request object. Message for getting a + GoldengateDeploymentEnvironment. + name (:class:`str`): + Required. Name of the resource with the format: + projects/{project}/locations/{location}/goldengateDeploymentEnvironments/{goldengate_deployment_environment} + + This corresponds to the ``name`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.types.GoldengateDeploymentEnvironment: + Details of the Goldengate Deployment + Environment resource. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [name] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, + goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest, + ): + request = goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest( + request + ) + + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if name is not None: + request.name = name + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.get_goldengate_deployment_environment + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)), + ) + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = await rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + async def list_goldengate_deployment_environments( + self, + request: Optional[ + Union[ + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest, + dict, + ] + ] = None, + *, + parent: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> pagers.ListGoldengateDeploymentEnvironmentsAsyncPager: + r"""Lists GoldengateDeploymentEnvironments in a given + project and location. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + async def sample_list_goldengate_deployment_environments(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListGoldengateDeploymentEnvironmentsRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_goldengate_deployment_environments(request=request) + + # Handle the response + async for response in page_result: + print(response) + + Args: + request (Optional[Union[google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentEnvironmentsRequest, dict]]): + The request object. Message for listing + GoldengateDeploymentEnvironments. + parent (:class:`str`): + Required. The parent, which owns this + collection of + GoldengateDeploymentEnvironments. + Format: + + projects/{project}/locations/{location} + + This corresponds to the ``parent`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateDeploymentEnvironmentsAsyncPager: + Message for response to listing + GoldengateDeploymentEnvironments + Iterating over this object will yield + results and resolve additional pages + automatically. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [parent] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest, + ): + request = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest( + request + ) + + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if parent is not None: + request.parent = parent + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.list_goldengate_deployment_environments + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)), + ) + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = await rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # This method is paged; wrap the response in a pager, which provides + # an `__aiter__` convenience method. + response = pagers.ListGoldengateDeploymentEnvironmentsAsyncPager( + method=rpc, + request=request, + response=response, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + async def get_goldengate_connection_type( + self, + request: Optional[ + Union[goldengate_connection_type.GetGoldengateConnectionTypeRequest, dict] + ] = None, + *, + name: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> goldengate_connection_type.GoldengateConnectionType: + r"""Gets details of a single GoldengateConnectionType. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + async def sample_get_goldengate_connection_type(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.GetGoldengateConnectionTypeRequest( + name="name_value", + ) + + # Make the request + response = await client.get_goldengate_connection_type(request=request) + + # Handle the response + print(response) + + Args: + request (Optional[Union[google.cloud.oracledatabase_v1.types.GetGoldengateConnectionTypeRequest, dict]]): + The request object. Message for getting a + GoldengateConnectionType. + name (:class:`str`): + Required. Name of the resource in the format: + projects/{project}/locations/{location}/goldengateConnectionTypes/{goldengate_connection_type} + + This corresponds to the ``name`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.types.GoldengateConnectionType: + Details of the Goldengate Connection + Type resource. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [name] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, goldengate_connection_type.GetGoldengateConnectionTypeRequest + ): + request = goldengate_connection_type.GetGoldengateConnectionTypeRequest( + request + ) + + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if name is not None: + request.name = name + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.get_goldengate_connection_type + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)), + ) + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = await rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + async def list_goldengate_connection_types( + self, + request: Optional[ + Union[goldengate_connection_type.ListGoldengateConnectionTypesRequest, dict] + ] = None, + *, + parent: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> pagers.ListGoldengateConnectionTypesAsyncPager: + r"""Lists GoldengateConnectionTypes in a given project + and location. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + async def sample_list_goldengate_connection_types(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListGoldengateConnectionTypesRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_goldengate_connection_types(request=request) + + # Handle the response + async for response in page_result: + print(response) + + Args: + request (Optional[Union[google.cloud.oracledatabase_v1.types.ListGoldengateConnectionTypesRequest, dict]]): + The request object. Message for listing + GoldengateConnectionTypes. + parent (:class:`str`): + Required. Parent value for + ListGoldengateConnectionTypesRequest + Format: + projects/{project}/locations/{location} + + This corresponds to the ``parent`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateConnectionTypesAsyncPager: + Message for response to listing + GoldengateConnectionTypes + Iterating over this object will yield + results and resolve additional pages + automatically. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [parent] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, goldengate_connection_type.ListGoldengateConnectionTypesRequest + ): + request = goldengate_connection_type.ListGoldengateConnectionTypesRequest( + request + ) + + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if parent is not None: + request.parent = parent + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.list_goldengate_connection_types + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)), + ) + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = await rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # This method is paged; wrap the response in a pager, which provides + # an `__aiter__` convenience method. + response = pagers.ListGoldengateConnectionTypesAsyncPager( + method=rpc, + request=request, + response=response, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + async def list_db_versions( + self, + request: Optional[Union[db_version.ListDbVersionsRequest, dict]] = None, + *, + parent: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> pagers.ListDbVersionsAsyncPager: + r"""List DbVersions for the given project and location. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + async def sample_list_db_versions(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListDbVersionsRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_db_versions(request=request) + + # Handle the response + async for response in page_result: + print(response) + + Args: + request (Optional[Union[google.cloud.oracledatabase_v1.types.ListDbVersionsRequest, dict]]): + The request object. The request for ``DbVersions.List``. + parent (:class:`str`): + Required. The parent value for the + DbVersion resource with the format: + projects/{project}/locations/{location} + + This corresponds to the ``parent`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbVersionsAsyncPager: + The response for DbVersions.List. + + Iterating over this object will yield results and + resolve additional pages automatically. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [parent] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance(request, db_version.ListDbVersionsRequest): + request = db_version.ListDbVersionsRequest(request) + + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if parent is not None: + request.parent = parent + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.list_db_versions + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)), + ) + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = await rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # This method is paged; wrap the response in a pager, which provides + # an `__aiter__` convenience method. + response = pagers.ListDbVersionsAsyncPager( + method=rpc, + request=request, + response=response, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + async def list_database_character_sets( + self, + request: Optional[ + Union[database_character_set.ListDatabaseCharacterSetsRequest, dict] + ] = None, + *, + parent: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> pagers.ListDatabaseCharacterSetsAsyncPager: + r"""List DatabaseCharacterSets for the given project and + location. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + async def sample_list_database_character_sets(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListDatabaseCharacterSetsRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_database_character_sets(request=request) + + # Handle the response + async for response in page_result: + print(response) + + Args: + request (Optional[Union[google.cloud.oracledatabase_v1.types.ListDatabaseCharacterSetsRequest, dict]]): + The request object. The request for ``DatabaseCharacterSet.List``. + parent (:class:`str`): + Required. The parent value for + DatabaseCharacterSets in the following + format: + projects/{project}/locations/{location}. + + This corresponds to the ``parent`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDatabaseCharacterSetsAsyncPager: + The response for DatabaseCharacterSet.List. + + Iterating over this object will yield results and + resolve additional pages automatically. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [parent] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, database_character_set.ListDatabaseCharacterSetsRequest + ): + request = database_character_set.ListDatabaseCharacterSetsRequest(request) + + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if parent is not None: + request.parent = parent + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.list_database_character_sets + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)), + ) + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = await rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # This method is paged; wrap the response in a pager, which provides + # an `__aiter__` convenience method. + response = pagers.ListDatabaseCharacterSetsAsyncPager( + method=rpc, + request=request, + response=response, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + async def list_goldengate_connection_assignments( + self, + request: Optional[ + Union[ + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest, + dict, + ] + ] = None, + *, + parent: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> pagers.ListGoldengateConnectionAssignmentsAsyncPager: + r"""Lists GoldengateConnectionAssignments in a given + project and location. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + async def sample_list_goldengate_connection_assignments(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListGoldengateConnectionAssignmentsRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_goldengate_connection_assignments(request=request) + + # Handle the response + async for response in page_result: + print(response) + + Args: + request (Optional[Union[google.cloud.oracledatabase_v1.types.ListGoldengateConnectionAssignmentsRequest, dict]]): + The request object. Request message for listing + GoldengateConnectionAssignments. + parent (:class:`str`): + Required. The parent value for the + GoldengateConnectionAssignments. Format: + projects/{project}/locations/{location} + + This corresponds to the ``parent`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateConnectionAssignmentsAsyncPager: + Response message for listing + GoldengateConnectionAssignments. + Iterating over this object will yield + results and resolve additional pages + automatically. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [parent] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest, + ): + request = goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest( + request + ) + + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if parent is not None: + request.parent = parent + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.list_goldengate_connection_assignments + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)), + ) + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = await rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # This method is paged; wrap the response in a pager, which provides + # an `__aiter__` convenience method. + response = pagers.ListGoldengateConnectionAssignmentsAsyncPager( + method=rpc, + request=request, + response=response, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + async def get_goldengate_connection_assignment( + self, + request: Optional[ + Union[ + goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest, + dict, + ] + ] = None, + *, + name: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> goldengate_connection_assignment.GoldengateConnectionAssignment: + r"""Gets details of a single + GoldengateConnectionAssignment. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + async def sample_get_goldengate_connection_assignment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.GetGoldengateConnectionAssignmentRequest( + name="name_value", + ) + + # Make the request + response = await client.get_goldengate_connection_assignment(request=request) + + # Handle the response + print(response) + + Args: + request (Optional[Union[google.cloud.oracledatabase_v1.types.GetGoldengateConnectionAssignmentRequest, dict]]): + The request object. Request message for getting a + GoldengateConnectionAssignment. + name (:class:`str`): + Required. The name of the GoldengateConnectionAssignment + to retrieve. Format: + projects/{project}/locations/{location}/goldengateConnectionAssignments/{goldengate_connection_assignment} + + This corresponds to the ``name`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.types.GoldengateConnectionAssignment: + Represents the metadata of a + Goldengate Connection Assignment. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [name] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, + goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest, + ): + request = goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest( + request + ) + + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if name is not None: + request.name = name + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.get_goldengate_connection_assignment + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)), + ) + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = await rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + async def create_goldengate_connection_assignment( + self, + request: Optional[ + Union[ + gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest, + dict, + ] + ] = None, + *, + parent: Optional[str] = None, + goldengate_connection_assignment: Optional[ + gco_goldengate_connection_assignment.GoldengateConnectionAssignment + ] = None, + goldengate_connection_assignment_id: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operation_async.AsyncOperation: + r"""Creates a new GoldengateConnectionAssignment in a + given project and location. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + async def sample_create_goldengate_connection_assignment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + goldengate_connection_assignment = oracledatabase_v1.GoldengateConnectionAssignment() + goldengate_connection_assignment.properties.goldengate_connection = "goldengate_connection_value" + goldengate_connection_assignment.properties.goldengate_deployment = "goldengate_deployment_value" + + request = oracledatabase_v1.CreateGoldengateConnectionAssignmentRequest( + parent="parent_value", + goldengate_connection_assignment_id="goldengate_connection_assignment_id_value", + goldengate_connection_assignment=goldengate_connection_assignment, + ) + + # Make the request + operation = await client.create_goldengate_connection_assignment(request=request) + + print("Waiting for operation to complete...") + + response = await operation.result() + + # Handle the response + print(response) + + Args: + request (Optional[Union[google.cloud.oracledatabase_v1.types.CreateGoldengateConnectionAssignmentRequest, dict]]): + The request object. Request message for creating a + GoldengateConnectionAssignment. + parent (:class:`str`): + Required. The parent resource where + this GoldengateConnectionAssignment will + be created. Format: + projects/{project}/locations/{location} + + This corresponds to the ``parent`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + goldengate_connection_assignment (:class:`google.cloud.oracledatabase_v1.types.GoldengateConnectionAssignment`): + Required. The + GoldengateConnectionAssignment to + create. + + This corresponds to the ``goldengate_connection_assignment`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + goldengate_connection_assignment_id (:class:`str`): + Required. The ID of the + GoldengateConnectionAssignment to + create. + + This corresponds to the ``goldengate_connection_assignment_id`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.api_core.operation_async.AsyncOperation: + An object representing a long-running operation. + + The result type for the operation will be + :class:`google.cloud.oracledatabase_v1.types.GoldengateConnectionAssignment` + Represents the metadata of a Goldengate Connection + Assignment. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [ + parent, + goldengate_connection_assignment, + goldengate_connection_assignment_id, + ] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, + gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest, + ): + request = gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest( + request + ) + + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if parent is not None: + request.parent = parent + if goldengate_connection_assignment is not None: + request.goldengate_connection_assignment = goldengate_connection_assignment + if goldengate_connection_assignment_id is not None: + request.goldengate_connection_assignment_id = ( + goldengate_connection_assignment_id + ) + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.create_goldengate_connection_assignment + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)), + ) + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = await rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Wrap the response in an operation future. + response = operation_async.from_gapic( + response, + self._client._transport.operations_client, + gco_goldengate_connection_assignment.GoldengateConnectionAssignment, + metadata_type=oracledatabase.OperationMetadata, + ) + + # Done; return the response. + return response + + async def delete_goldengate_connection_assignment( + self, + request: Optional[ + Union[ + goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest, + dict, + ] + ] = None, + *, + name: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operation_async.AsyncOperation: + r"""Deletes a single GoldengateConnectionAssignment. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + async def sample_delete_goldengate_connection_assignment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.DeleteGoldengateConnectionAssignmentRequest( + name="name_value", + ) + + # Make the request + operation = await client.delete_goldengate_connection_assignment(request=request) + + print("Waiting for operation to complete...") + + response = await operation.result() + + # Handle the response + print(response) + + Args: + request (Optional[Union[google.cloud.oracledatabase_v1.types.DeleteGoldengateConnectionAssignmentRequest, dict]]): + The request object. Request message for deleting a + GoldengateConnectionAssignment. + name (:class:`str`): + Required. The name of the GoldengateConnectionAssignment + to delete. Format: + projects/{project}/locations/{location}/goldengateConnectionAssignments/{goldengate_connection_assignment} + + This corresponds to the ``name`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.api_core.operation_async.AsyncOperation: + An object representing a long-running operation. + + The result type for the operation will be :class:`google.protobuf.empty_pb2.Empty` A generic empty message that you can re-use to avoid defining duplicated + empty messages in your APIs. A typical example is to + use it as the request or the response type of an API + method. For instance: + + service Foo { + rpc Bar(google.protobuf.Empty) returns + (google.protobuf.Empty); + + } + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [name] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, + goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest, + ): + request = goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest( + request + ) + + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if name is not None: + request.name = name + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.delete_goldengate_connection_assignment + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)), + ) + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = await rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Wrap the response in an operation future. + response = operation_async.from_gapic( + response, + self._client._transport.operations_client, + empty_pb2.Empty, + metadata_type=oracledatabase.OperationMetadata, + ) + + # Done; return the response. + return response + + async def test_goldengate_connection_assignment( + self, + request: Optional[ + Union[ + goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest, + dict, + ] + ] = None, + *, + name: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse: + r"""Tests a single GoldengateConnectionAssignment. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + async def sample_test_goldengate_connection_assignment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.TestGoldengateConnectionAssignmentRequest( + name="name_value", + ) + + # Make the request + response = await client.test_goldengate_connection_assignment(request=request) + + # Handle the response + print(response) + + Args: + request (Optional[Union[google.cloud.oracledatabase_v1.types.TestGoldengateConnectionAssignmentRequest, dict]]): + The request object. Request message for + TestGoldengateConnectionAssignment. + name (:class:`str`): + Required. Name of the connection assignment for which to + test connection. + projects/{project}/locations/{region}/goldengateConnectionAssignments/{goldengate_connection_assignment} + + This corresponds to the ``name`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.types.TestGoldengateConnectionAssignmentResponse: + The result of the connectivity test + performed between the Goldengate + deployment and the associated database / + service. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [name] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, + goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest, + ): + request = goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest( + request + ) + + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if name is not None: + request.name = name + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._client._transport._wrapped_methods[ + self._client._transport.test_goldengate_connection_assignment + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)), + ) + + # Validate the universe domain. + self._client._validate_universe_domain() + + # Send the request. + response = await rpc( + request, retry=retry, timeout=timeout, metadata=metadata, diff --git a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/client.py b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/client.py index d8fa76257bdf..e9186be91c05 100644 --- a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/client.py +++ b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/client.py @@ -89,6 +89,13 @@ exadb_vm_cluster, exascale_db_storage_vault, gi_version, + goldengate_connection, + goldengate_connection_assignment, + goldengate_connection_type, + goldengate_deployment, + goldengate_deployment_environment, + goldengate_deployment_type, + goldengate_deployment_version, minor_version, odb_network, odb_subnet, @@ -106,6 +113,15 @@ from google.cloud.oracledatabase_v1.types import ( exascale_db_storage_vault as gco_exascale_db_storage_vault, ) +from google.cloud.oracledatabase_v1.types import ( + goldengate_connection as gco_goldengate_connection, +) +from google.cloud.oracledatabase_v1.types import ( + goldengate_connection_assignment as gco_goldengate_connection_assignment, +) +from google.cloud.oracledatabase_v1.types import ( + goldengate_deployment as gco_goldengate_deployment, +) from google.cloud.oracledatabase_v1.types import odb_network as gco_odb_network from google.cloud.oracledatabase_v1.types import odb_subnet as gco_odb_subnet @@ -697,6 +713,160 @@ def parse_gi_version_path(path: str) -> Dict[str, str]: ) return m.groupdict() if m else {} + @staticmethod + def goldengate_connection_path( + project: str, + location: str, + goldengate_connection: str, + ) -> str: + """Returns a fully-qualified goldengate_connection string.""" + return "projects/{project}/locations/{location}/goldengateConnections/{goldengate_connection}".format( + project=project, + location=location, + goldengate_connection=goldengate_connection, + ) + + @staticmethod + def parse_goldengate_connection_path(path: str) -> Dict[str, str]: + """Parses a goldengate_connection path into its component segments.""" + m = re.match( + r"^projects/(?P.+?)/locations/(?P.+?)/goldengateConnections/(?P.+?)$", + path, + ) + return m.groupdict() if m else {} + + @staticmethod + def goldengate_connection_assignment_path( + project: str, + location: str, + goldengate_connection_assignment: str, + ) -> str: + """Returns a fully-qualified goldengate_connection_assignment string.""" + return "projects/{project}/locations/{location}/goldengateConnectionAssignments/{goldengate_connection_assignment}".format( + project=project, + location=location, + goldengate_connection_assignment=goldengate_connection_assignment, + ) + + @staticmethod + def parse_goldengate_connection_assignment_path(path: str) -> Dict[str, str]: + """Parses a goldengate_connection_assignment path into its component segments.""" + m = re.match( + r"^projects/(?P.+?)/locations/(?P.+?)/goldengateConnectionAssignments/(?P.+?)$", + path, + ) + return m.groupdict() if m else {} + + @staticmethod + def goldengate_connection_type_path( + project: str, + location: str, + goldengate_connection_type: str, + ) -> str: + """Returns a fully-qualified goldengate_connection_type string.""" + return "projects/{project}/locations/{location}/goldengateConnectionTypes/{goldengate_connection_type}".format( + project=project, + location=location, + goldengate_connection_type=goldengate_connection_type, + ) + + @staticmethod + def parse_goldengate_connection_type_path(path: str) -> Dict[str, str]: + """Parses a goldengate_connection_type path into its component segments.""" + m = re.match( + r"^projects/(?P.+?)/locations/(?P.+?)/goldengateConnectionTypes/(?P.+?)$", + path, + ) + return m.groupdict() if m else {} + + @staticmethod + def goldengate_deployment_path( + project: str, + location: str, + goldengate_deployment: str, + ) -> str: + """Returns a fully-qualified goldengate_deployment string.""" + return "projects/{project}/locations/{location}/goldengateDeployments/{goldengate_deployment}".format( + project=project, + location=location, + goldengate_deployment=goldengate_deployment, + ) + + @staticmethod + def parse_goldengate_deployment_path(path: str) -> Dict[str, str]: + """Parses a goldengate_deployment path into its component segments.""" + m = re.match( + r"^projects/(?P.+?)/locations/(?P.+?)/goldengateDeployments/(?P.+?)$", + path, + ) + return m.groupdict() if m else {} + + @staticmethod + def goldengate_deployment_environment_path( + project: str, + location: str, + goldengate_deployment_environment: str, + ) -> str: + """Returns a fully-qualified goldengate_deployment_environment string.""" + return "projects/{project}/locations/{location}/goldengateDeploymentEnvironments/{goldengate_deployment_environment}".format( + project=project, + location=location, + goldengate_deployment_environment=goldengate_deployment_environment, + ) + + @staticmethod + def parse_goldengate_deployment_environment_path(path: str) -> Dict[str, str]: + """Parses a goldengate_deployment_environment path into its component segments.""" + m = re.match( + r"^projects/(?P.+?)/locations/(?P.+?)/goldengateDeploymentEnvironments/(?P.+?)$", + path, + ) + return m.groupdict() if m else {} + + @staticmethod + def goldengate_deployment_type_path( + project: str, + location: str, + goldengate_deployment_type: str, + ) -> str: + """Returns a fully-qualified goldengate_deployment_type string.""" + return "projects/{project}/locations/{location}/goldengateDeploymentTypes/{goldengate_deployment_type}".format( + project=project, + location=location, + goldengate_deployment_type=goldengate_deployment_type, + ) + + @staticmethod + def parse_goldengate_deployment_type_path(path: str) -> Dict[str, str]: + """Parses a goldengate_deployment_type path into its component segments.""" + m = re.match( + r"^projects/(?P.+?)/locations/(?P.+?)/goldengateDeploymentTypes/(?P.+?)$", + path, + ) + return m.groupdict() if m else {} + + @staticmethod + def goldengate_deployment_version_path( + project: str, + location: str, + goldengate_deployment_version: str, + ) -> str: + """Returns a fully-qualified goldengate_deployment_version string.""" + return "projects/{project}/locations/{location}/goldengateDeploymentVersions/{goldengate_deployment_version}".format( + project=project, + location=location, + goldengate_deployment_version=goldengate_deployment_version, + ) + + @staticmethod + def parse_goldengate_deployment_version_path(path: str) -> Dict[str, str]: + """Parses a goldengate_deployment_version path into its component segments.""" + m = re.match( + r"^projects/(?P.+?)/locations/(?P.+?)/goldengateDeploymentVersions/(?P.+?)$", + path, + ) + return m.groupdict() if m else {} + @staticmethod def minor_version_path( project: str, @@ -810,6 +980,28 @@ def parse_pluggable_database_path(path: str) -> Dict[str, str]: ) return m.groupdict() if m else {} + @staticmethod + def secret_version_path( + project: str, + secret: str, + secret_version: str, + ) -> str: + """Returns a fully-qualified secret_version string.""" + return "projects/{project}/secrets/{secret}/versions/{secret_version}".format( + project=project, + secret=secret, + secret_version=secret_version, + ) + + @staticmethod + def parse_secret_version_path(path: str) -> Dict[str, str]: + """Parses a secret_version path into its component segments.""" + m = re.match( + r"^projects/(?P.+?)/secrets/(?P.+?)/versions/(?P.+?)$", + path, + ) + return m.groupdict() if m else {} + @staticmethod def common_billing_account_path( billing_account: str, @@ -4832,7 +5024,6 @@ def sample_switchover_autonomous_database(): # Initialize request argument(s) request = oracledatabase_v1.SwitchoverAutonomousDatabaseRequest( name="name_value", - peer_autonomous_database="peer_autonomous_database_value", ) # Make the request @@ -4858,8 +5049,10 @@ def sample_switchover_autonomous_database(): on the ``request`` instance; if ``request`` is provided, this should not be set. peer_autonomous_database (str): - Required. The peer database name to - switch over to. + Optional. The peer database name to + switch over to. Required for + cross-region standby, and must be + omitted for in-region Data Guard. This corresponds to the ``peer_autonomous_database`` field on the ``request`` instance; if ``request`` is provided, this @@ -4971,7 +5164,6 @@ def sample_failover_autonomous_database(): # Initialize request argument(s) request = oracledatabase_v1.FailoverAutonomousDatabaseRequest( name="name_value", - peer_autonomous_database="peer_autonomous_database_value", ) # Make the request @@ -4997,8 +5189,10 @@ def sample_failover_autonomous_database(): on the ``request`` instance; if ``request`` is provided, this should not be set. peer_autonomous_database (str): - Required. The peer database name to - fail over to. + Optional. The peer database name to + fail over to. Required for cross-region + standby, and must be omitted for + in-region Data Guard. This corresponds to the ``peer_autonomous_database`` field on the ``request`` instance; if ``request`` is provided, this @@ -8595,16 +8789,19 @@ def sample_delete_db_system(): # Done; return the response. return response - def list_db_versions( + def list_goldengate_deployments( self, - request: Optional[Union[db_version.ListDbVersionsRequest, dict]] = None, + request: Optional[ + Union[goldengate_deployment.ListGoldengateDeploymentsRequest, dict] + ] = None, *, parent: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> pagers.ListDbVersionsPager: - r"""List DbVersions for the given project and location. + ) -> pagers.ListGoldengateDeploymentsPager: + r"""Lists all the GoldengateDeployments for the given + project and location. .. code-block:: python @@ -8617,29 +8814,30 @@ def list_db_versions( # https://googleapis.dev/python/google-api-core/latest/client_options.html from google.cloud import oracledatabase_v1 - def sample_list_db_versions(): + def sample_list_goldengate_deployments(): # Create a client client = oracledatabase_v1.OracleDatabaseClient() # Initialize request argument(s) - request = oracledatabase_v1.ListDbVersionsRequest( + request = oracledatabase_v1.ListGoldengateDeploymentsRequest( parent="parent_value", ) # Make the request - page_result = client.list_db_versions(request=request) + page_result = client.list_goldengate_deployments(request=request) # Handle the response for response in page_result: print(response) Args: - request (Union[google.cloud.oracledatabase_v1.types.ListDbVersionsRequest, dict]): - The request object. The request for ``DbVersions.List``. + request (Union[google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentsRequest, dict]): + The request object. The request for ``GoldengateDeployment.List``. parent (str): - Required. The parent value for the - DbVersion resource with the format: - projects/{project}/locations/{location} + Required. The parent value for + GoldengateDeployments in the following + format: + projects/{project}/locations/{location}. This corresponds to the ``parent`` field on the ``request`` instance; if ``request`` is provided, this @@ -8653,8 +8851,8 @@ def sample_list_db_versions(): be of type `bytes`. Returns: - google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbVersionsPager: - The response for DbVersions.List. + google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateDeploymentsPager: + The response for GoldengateDeployment.List. Iterating over this object will yield results and resolve additional pages automatically. @@ -8675,8 +8873,10 @@ def sample_list_db_versions(): # - Use the request object if provided (there's no risk of modifying the input as # there are no flattened fields), or create one. - if not isinstance(request, db_version.ListDbVersionsRequest): - request = db_version.ListDbVersionsRequest(request) + if not isinstance( + request, goldengate_deployment.ListGoldengateDeploymentsRequest + ): + request = goldengate_deployment.ListGoldengateDeploymentsRequest(request) # If we have keyword arguments corresponding to fields on the # request, apply these. if parent is not None: @@ -8684,7 +8884,9 @@ def sample_list_db_versions(): # Wrap the RPC method; this adds retry and timeout information, # and friendly error handling. - rpc = self._transport._wrapped_methods[self._transport.list_db_versions] + rpc = self._transport._wrapped_methods[ + self._transport.list_goldengate_deployments + ] # Certain fields should be provided within the metadata header; # add these here. @@ -8705,7 +8907,7 @@ def sample_list_db_versions(): # This method is paged; wrap the response in a pager, which provides # an `__iter__` convenience method. - response = pagers.ListDbVersionsPager( + response = pagers.ListGoldengateDeploymentsPager( method=rpc, request=request, response=response, @@ -8717,19 +8919,18 @@ def sample_list_db_versions(): # Done; return the response. return response - def list_database_character_sets( + def get_goldengate_deployment( self, request: Optional[ - Union[database_character_set.ListDatabaseCharacterSetsRequest, dict] + Union[goldengate_deployment.GetGoldengateDeploymentRequest, dict] ] = None, *, - parent: Optional[str] = None, + name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> pagers.ListDatabaseCharacterSetsPager: - r"""List DatabaseCharacterSets for the given project and - location. + ) -> goldengate_deployment.GoldengateDeployment: + r"""Gets details of a single GoldengateDeployment. .. code-block:: python @@ -8742,32 +8943,30 @@ def list_database_character_sets( # https://googleapis.dev/python/google-api-core/latest/client_options.html from google.cloud import oracledatabase_v1 - def sample_list_database_character_sets(): + def sample_get_goldengate_deployment(): # Create a client client = oracledatabase_v1.OracleDatabaseClient() # Initialize request argument(s) - request = oracledatabase_v1.ListDatabaseCharacterSetsRequest( - parent="parent_value", + request = oracledatabase_v1.GetGoldengateDeploymentRequest( + name="name_value", ) # Make the request - page_result = client.list_database_character_sets(request=request) + response = client.get_goldengate_deployment(request=request) # Handle the response - for response in page_result: - print(response) + print(response) Args: - request (Union[google.cloud.oracledatabase_v1.types.ListDatabaseCharacterSetsRequest, dict]): - The request object. The request for ``DatabaseCharacterSet.List``. - parent (str): - Required. The parent value for - DatabaseCharacterSets in the following - format: - projects/{project}/locations/{location}. + request (Union[google.cloud.oracledatabase_v1.types.GetGoldengateDeploymentRequest, dict]): + The request object. The request for ``GoldengateDeployment.Get``. + name (str): + Required. The name of the GoldengateDeployment in the + following format: + projects/{project}/locations/{location}/goldengateDeployments/{goldengate_deployment}. - This corresponds to the ``parent`` field + This corresponds to the ``name`` field on the ``request`` instance; if ``request`` is provided, this should not be set. retry (google.api_core.retry.Retry): Designation of what errors, if any, @@ -8779,17 +8978,15 @@ def sample_list_database_character_sets(): be of type `bytes`. Returns: - google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDatabaseCharacterSetsPager: - The response for DatabaseCharacterSet.List. - - Iterating over this object will yield results and - resolve additional pages automatically. + google.cloud.oracledatabase_v1.types.GoldengateDeployment: + GoldengateDeployment Goldengate + Deployment resource model. """ # Create or coerce a protobuf request object. # - Quick check: If we got a request object, we should *not* have # gotten any keyword arguments that map to the request. - flattened_params = [parent] + flattened_params = [name] has_flattened_params = ( len([param for param in flattened_params if param is not None]) > 0 ) @@ -8802,24 +8999,24 @@ def sample_list_database_character_sets(): # - Use the request object if provided (there's no risk of modifying the input as # there are no flattened fields), or create one. if not isinstance( - request, database_character_set.ListDatabaseCharacterSetsRequest + request, goldengate_deployment.GetGoldengateDeploymentRequest ): - request = database_character_set.ListDatabaseCharacterSetsRequest(request) + request = goldengate_deployment.GetGoldengateDeploymentRequest(request) # If we have keyword arguments corresponding to fields on the # request, apply these. - if parent is not None: - request.parent = parent + if name is not None: + request.name = name # Wrap the RPC method; this adds retry and timeout information, # and friendly error handling. rpc = self._transport._wrapped_methods[ - self._transport.list_database_character_sets + self._transport.get_goldengate_deployment ] # Certain fields should be provided within the metadata header; # add these here. metadata = tuple(metadata) + ( - gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)), + gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)), ) # Validate the universe domain. @@ -8833,12 +9030,3084 @@ def sample_list_database_character_sets(): metadata=metadata, ) - # This method is paged; wrap the response in a pager, which provides - # an `__iter__` convenience method. - response = pagers.ListDatabaseCharacterSetsPager( - method=rpc, - request=request, - response=response, + # Done; return the response. + return response + + def create_goldengate_deployment( + self, + request: Optional[ + Union[gco_goldengate_deployment.CreateGoldengateDeploymentRequest, dict] + ] = None, + *, + parent: Optional[str] = None, + goldengate_deployment: Optional[ + gco_goldengate_deployment.GoldengateDeployment + ] = None, + goldengate_deployment_id: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operation.Operation: + r"""Creates a new GoldengateDeployment in a given project + and location. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + def sample_create_goldengate_deployment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + goldengate_deployment = oracledatabase_v1.GoldengateDeployment() + goldengate_deployment.properties.deployment_type = "deployment_type_value" + goldengate_deployment.properties.ogg_data.admin_password = "admin_password_value" + goldengate_deployment.properties.ogg_data.deployment = "deployment_value" + goldengate_deployment.properties.ogg_data.admin_username = "admin_username_value" + goldengate_deployment.odb_subnet = "odb_subnet_value" + goldengate_deployment.display_name = "display_name_value" + + request = oracledatabase_v1.CreateGoldengateDeploymentRequest( + parent="parent_value", + goldengate_deployment_id="goldengate_deployment_id_value", + goldengate_deployment=goldengate_deployment, + ) + + # Make the request + operation = client.create_goldengate_deployment(request=request) + + print("Waiting for operation to complete...") + + response = operation.result() + + # Handle the response + print(response) + + Args: + request (Union[google.cloud.oracledatabase_v1.types.CreateGoldengateDeploymentRequest, dict]): + The request object. The request for ``GoldengateDeployment.Create``. + parent (str): + Required. The value for parent of the + GoldengateDeployment in the following + format: + projects/{project}/locations/{location}. + + This corresponds to the ``parent`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + goldengate_deployment (google.cloud.oracledatabase_v1.types.GoldengateDeployment): + Required. The resource being created. + This corresponds to the ``goldengate_deployment`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + goldengate_deployment_id (str): + Required. The ID of the GoldengateDeployment to create. + This value is restricted to + (^\ `a-z <[a-z0-9-]{0,61}[a-z0-9]>`__?$) and must be a + maximum of 63 characters in length. The value must start + with a letter and end with a letter or a number. + + This corresponds to the ``goldengate_deployment_id`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.api_core.operation.Operation: + An object representing a long-running operation. + + The result type for the operation will be + :class:`google.cloud.oracledatabase_v1.types.GoldengateDeployment` + GoldengateDeployment Goldengate Deployment resource + model. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [parent, goldengate_deployment, goldengate_deployment_id] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, gco_goldengate_deployment.CreateGoldengateDeploymentRequest + ): + request = gco_goldengate_deployment.CreateGoldengateDeploymentRequest( + request + ) + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if parent is not None: + request.parent = parent + if goldengate_deployment is not None: + request.goldengate_deployment = goldengate_deployment + if goldengate_deployment_id is not None: + request.goldengate_deployment_id = goldengate_deployment_id + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[ + self._transport.create_goldengate_deployment + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)), + ) + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Wrap the response in an operation future. + response = operation.from_gapic( + response, + self._transport.operations_client, + gco_goldengate_deployment.GoldengateDeployment, + metadata_type=oracledatabase.OperationMetadata, + ) + + # Done; return the response. + return response + + def delete_goldengate_deployment( + self, + request: Optional[ + Union[goldengate_deployment.DeleteGoldengateDeploymentRequest, dict] + ] = None, + *, + name: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operation.Operation: + r"""Deletes a single GoldengateDeployment. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + def sample_delete_goldengate_deployment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.DeleteGoldengateDeploymentRequest( + name="name_value", + ) + + # Make the request + operation = client.delete_goldengate_deployment(request=request) + + print("Waiting for operation to complete...") + + response = operation.result() + + # Handle the response + print(response) + + Args: + request (Union[google.cloud.oracledatabase_v1.types.DeleteGoldengateDeploymentRequest, dict]): + The request object. The request for ``GoldengateDeployment.Delete``. + name (str): + Required. The name of the GoldengateDeployment in the + following format: + projects/{project}/locations/{location}/goldengateDeployments/{goldengate_deployment}. + + This corresponds to the ``name`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.api_core.operation.Operation: + An object representing a long-running operation. + + The result type for the operation will be :class:`google.protobuf.empty_pb2.Empty` A generic empty message that you can re-use to avoid defining duplicated + empty messages in your APIs. A typical example is to + use it as the request or the response type of an API + method. For instance: + + service Foo { + rpc Bar(google.protobuf.Empty) returns + (google.protobuf.Empty); + + } + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [name] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, goldengate_deployment.DeleteGoldengateDeploymentRequest + ): + request = goldengate_deployment.DeleteGoldengateDeploymentRequest(request) + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if name is not None: + request.name = name + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[ + self._transport.delete_goldengate_deployment + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)), + ) + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Wrap the response in an operation future. + response = operation.from_gapic( + response, + self._transport.operations_client, + empty_pb2.Empty, + metadata_type=oracledatabase.OperationMetadata, + ) + + # Done; return the response. + return response + + def stop_goldengate_deployment( + self, + request: Optional[ + Union[goldengate_deployment.StopGoldengateDeploymentRequest, dict] + ] = None, + *, + name: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operation.Operation: + r"""Stops a single GoldengateDeployment. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + def sample_stop_goldengate_deployment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.StopGoldengateDeploymentRequest( + name="name_value", + ) + + # Make the request + operation = client.stop_goldengate_deployment(request=request) + + print("Waiting for operation to complete...") + + response = operation.result() + + # Handle the response + print(response) + + Args: + request (Union[google.cloud.oracledatabase_v1.types.StopGoldengateDeploymentRequest, dict]): + The request object. The request for ``GoldengateDeployment.Stop``. + name (str): + Required. The name of the Goldengate Deployment in the + following format: + projects/{project}/locations/{location}/goldengateDeployments/{goldengate_deployment}. + + This corresponds to the ``name`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.api_core.operation.Operation: + An object representing a long-running operation. + + The result type for the operation will be + :class:`google.cloud.oracledatabase_v1.types.GoldengateDeployment` + GoldengateDeployment Goldengate Deployment resource + model. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [name] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, goldengate_deployment.StopGoldengateDeploymentRequest + ): + request = goldengate_deployment.StopGoldengateDeploymentRequest(request) + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if name is not None: + request.name = name + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[ + self._transport.stop_goldengate_deployment + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)), + ) + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Wrap the response in an operation future. + response = operation.from_gapic( + response, + self._transport.operations_client, + goldengate_deployment.GoldengateDeployment, + metadata_type=oracledatabase.OperationMetadata, + ) + + # Done; return the response. + return response + + def start_goldengate_deployment( + self, + request: Optional[ + Union[goldengate_deployment.StartGoldengateDeploymentRequest, dict] + ] = None, + *, + name: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operation.Operation: + r"""Starts a single GoldengateDeployment. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + def sample_start_goldengate_deployment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.StartGoldengateDeploymentRequest( + name="name_value", + ) + + # Make the request + operation = client.start_goldengate_deployment(request=request) + + print("Waiting for operation to complete...") + + response = operation.result() + + # Handle the response + print(response) + + Args: + request (Union[google.cloud.oracledatabase_v1.types.StartGoldengateDeploymentRequest, dict]): + The request object. The request for ``GoldengateDeployment.Start``. + name (str): + Required. The name of the Goldengate Deployment in the + following format: + projects/{project}/locations/{location}/goldengateDeployments/{goldengate_deployment}. + + This corresponds to the ``name`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.api_core.operation.Operation: + An object representing a long-running operation. + + The result type for the operation will be + :class:`google.cloud.oracledatabase_v1.types.GoldengateDeployment` + GoldengateDeployment Goldengate Deployment resource + model. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [name] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, goldengate_deployment.StartGoldengateDeploymentRequest + ): + request = goldengate_deployment.StartGoldengateDeploymentRequest(request) + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if name is not None: + request.name = name + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[ + self._transport.start_goldengate_deployment + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)), + ) + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Wrap the response in an operation future. + response = operation.from_gapic( + response, + self._transport.operations_client, + goldengate_deployment.GoldengateDeployment, + metadata_type=oracledatabase.OperationMetadata, + ) + + # Done; return the response. + return response + + def list_goldengate_connections( + self, + request: Optional[ + Union[goldengate_connection.ListGoldengateConnectionsRequest, dict] + ] = None, + *, + parent: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> pagers.ListGoldengateConnectionsPager: + r"""Lists all the GoldengateConnections for the given + project and location. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + def sample_list_goldengate_connections(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListGoldengateConnectionsRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_goldengate_connections(request=request) + + # Handle the response + for response in page_result: + print(response) + + Args: + request (Union[google.cloud.oracledatabase_v1.types.ListGoldengateConnectionsRequest, dict]): + The request object. The request for ``GoldengateConnection.List``. + parent (str): + Required. The parent value for + GoldengateConnections in the following + format: + projects/{project}/locations/{location}. + + This corresponds to the ``parent`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateConnectionsPager: + The response for GoldengateConnection.List. + + Iterating over this object will yield results and + resolve additional pages automatically. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [parent] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, goldengate_connection.ListGoldengateConnectionsRequest + ): + request = goldengate_connection.ListGoldengateConnectionsRequest(request) + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if parent is not None: + request.parent = parent + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[ + self._transport.list_goldengate_connections + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)), + ) + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # This method is paged; wrap the response in a pager, which provides + # an `__iter__` convenience method. + response = pagers.ListGoldengateConnectionsPager( + method=rpc, + request=request, + response=response, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + def get_goldengate_connection( + self, + request: Optional[ + Union[goldengate_connection.GetGoldengateConnectionRequest, dict] + ] = None, + *, + name: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> goldengate_connection.GoldengateConnection: + r"""Gets details of a single GoldengateConnection. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + def sample_get_goldengate_connection(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.GetGoldengateConnectionRequest( + name="name_value", + ) + + # Make the request + response = client.get_goldengate_connection(request=request) + + # Handle the response + print(response) + + Args: + request (Union[google.cloud.oracledatabase_v1.types.GetGoldengateConnectionRequest, dict]): + The request object. The request for ``GoldengateConnection.Get``. + name (str): + Required. The name of the GoldengateConnection in the + following format: + projects/{project}/locations/{location}/goldengateConnections/{goldengate_connection}. + + This corresponds to the ``name`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.types.GoldengateConnection: + Details of the GoldengateConnection + resource. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [name] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, goldengate_connection.GetGoldengateConnectionRequest + ): + request = goldengate_connection.GetGoldengateConnectionRequest(request) + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if name is not None: + request.name = name + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[ + self._transport.get_goldengate_connection + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)), + ) + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + def create_goldengate_connection( + self, + request: Optional[ + Union[gco_goldengate_connection.CreateGoldengateConnectionRequest, dict] + ] = None, + *, + parent: Optional[str] = None, + goldengate_connection: Optional[ + gco_goldengate_connection.GoldengateConnection + ] = None, + goldengate_connection_id: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operation.Operation: + r"""Creates a new GoldengateConnection in a given project + and location. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + def sample_create_goldengate_connection(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + goldengate_connection = oracledatabase_v1.GoldengateConnection() + goldengate_connection.properties.oracle_connection_properties.password = "password_value" + goldengate_connection.properties.connection_type = "ICEBERG" + goldengate_connection.properties.display_name = "display_name_value" + + request = oracledatabase_v1.CreateGoldengateConnectionRequest( + parent="parent_value", + goldengate_connection_id="goldengate_connection_id_value", + goldengate_connection=goldengate_connection, + ) + + # Make the request + operation = client.create_goldengate_connection(request=request) + + print("Waiting for operation to complete...") + + response = operation.result() + + # Handle the response + print(response) + + Args: + request (Union[google.cloud.oracledatabase_v1.types.CreateGoldengateConnectionRequest, dict]): + The request object. The request for ``GoldengateConnection.Create``. + parent (str): + Required. The value for parent of the + GoldengateConnection in the following + format: + projects/{project}/locations/{location}. + + This corresponds to the ``parent`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + goldengate_connection (google.cloud.oracledatabase_v1.types.GoldengateConnection): + Required. The resource being created. + This corresponds to the ``goldengate_connection`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + goldengate_connection_id (str): + Required. The ID of the GoldengateConnection to create. + This value is restricted to + (^\ `a-z <[a-z0-9-]{0,61}[a-z0-9]>`__?$) and must be a + maximum of 63 characters in length. The value must start + with a letter and end with a letter or a number. + + This corresponds to the ``goldengate_connection_id`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.api_core.operation.Operation: + An object representing a long-running operation. + + The result type for the operation will be + :class:`google.cloud.oracledatabase_v1.types.GoldengateConnection` + Details of the GoldengateConnection resource. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [parent, goldengate_connection, goldengate_connection_id] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, gco_goldengate_connection.CreateGoldengateConnectionRequest + ): + request = gco_goldengate_connection.CreateGoldengateConnectionRequest( + request + ) + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if parent is not None: + request.parent = parent + if goldengate_connection is not None: + request.goldengate_connection = goldengate_connection + if goldengate_connection_id is not None: + request.goldengate_connection_id = goldengate_connection_id + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[ + self._transport.create_goldengate_connection + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)), + ) + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Wrap the response in an operation future. + response = operation.from_gapic( + response, + self._transport.operations_client, + gco_goldengate_connection.GoldengateConnection, + metadata_type=oracledatabase.OperationMetadata, + ) + + # Done; return the response. + return response + + def delete_goldengate_connection( + self, + request: Optional[ + Union[goldengate_connection.DeleteGoldengateConnectionRequest, dict] + ] = None, + *, + name: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operation.Operation: + r"""Deletes a single GoldengateConnection. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + def sample_delete_goldengate_connection(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.DeleteGoldengateConnectionRequest( + name="name_value", + ) + + # Make the request + operation = client.delete_goldengate_connection(request=request) + + print("Waiting for operation to complete...") + + response = operation.result() + + # Handle the response + print(response) + + Args: + request (Union[google.cloud.oracledatabase_v1.types.DeleteGoldengateConnectionRequest, dict]): + The request object. The request for ``GoldengateConnection.Delete``. + name (str): + Required. The name of the GoldengateConnection in the + following format: + projects/{project}/locations/{location}/goldengateConnections/{goldengate_connection}. + + This corresponds to the ``name`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.api_core.operation.Operation: + An object representing a long-running operation. + + The result type for the operation will be :class:`google.protobuf.empty_pb2.Empty` A generic empty message that you can re-use to avoid defining duplicated + empty messages in your APIs. A typical example is to + use it as the request or the response type of an API + method. For instance: + + service Foo { + rpc Bar(google.protobuf.Empty) returns + (google.protobuf.Empty); + + } + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [name] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, goldengate_connection.DeleteGoldengateConnectionRequest + ): + request = goldengate_connection.DeleteGoldengateConnectionRequest(request) + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if name is not None: + request.name = name + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[ + self._transport.delete_goldengate_connection + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)), + ) + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Wrap the response in an operation future. + response = operation.from_gapic( + response, + self._transport.operations_client, + empty_pb2.Empty, + metadata_type=oracledatabase.OperationMetadata, + ) + + # Done; return the response. + return response + + def get_goldengate_deployment_version( + self, + request: Optional[ + Union[ + goldengate_deployment_version.GetGoldengateDeploymentVersionRequest, + dict, + ] + ] = None, + *, + name: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> goldengate_deployment_version.GoldengateDeploymentVersion: + r"""Gets details of a single GoldengateDeploymentVersion. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + def sample_get_goldengate_deployment_version(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.GetGoldengateDeploymentVersionRequest( + name="name_value", + ) + + # Make the request + response = client.get_goldengate_deployment_version(request=request) + + # Handle the response + print(response) + + Args: + request (Union[google.cloud.oracledatabase_v1.types.GetGoldengateDeploymentVersionRequest, dict]): + The request object. Message for getting a + GoldengateDeploymentVersion. + name (str): + Required. The name of the GoldengateDeploymentVersion to + retrieve. Format: + projects/{project}/locations/{location}/goldengateDeploymentVersions/{goldengate_deployment_version} + + This corresponds to the ``name`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.types.GoldengateDeploymentVersion: + Details of the Goldengate Deployment + Version resource. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [name] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, goldengate_deployment_version.GetGoldengateDeploymentVersionRequest + ): + request = ( + goldengate_deployment_version.GetGoldengateDeploymentVersionRequest( + request + ) + ) + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if name is not None: + request.name = name + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[ + self._transport.get_goldengate_deployment_version + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)), + ) + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + def list_goldengate_deployment_versions( + self, + request: Optional[ + Union[ + goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest, + dict, + ] + ] = None, + *, + parent: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> pagers.ListGoldengateDeploymentVersionsPager: + r"""Lists GoldengateDeploymentVersions in a given project + and location. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + def sample_list_goldengate_deployment_versions(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListGoldengateDeploymentVersionsRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_goldengate_deployment_versions(request=request) + + # Handle the response + for response in page_result: + print(response) + + Args: + request (Union[google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentVersionsRequest, dict]): + The request object. Message for listing + GoldengateDeploymentVersions. + parent (str): + Required. Parent value for + ListGoldengateDeploymentVersionsRequest + Format: + projects/{project}/locations/{location} + + This corresponds to the ``parent`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateDeploymentVersionsPager: + Message for response to listing + GoldengateDeploymentVersions + Iterating over this object will yield + results and resolve additional pages + automatically. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [parent] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, + goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest, + ): + request = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest( + request + ) + ) + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if parent is not None: + request.parent = parent + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[ + self._transport.list_goldengate_deployment_versions + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)), + ) + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # This method is paged; wrap the response in a pager, which provides + # an `__iter__` convenience method. + response = pagers.ListGoldengateDeploymentVersionsPager( + method=rpc, + request=request, + response=response, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + def get_goldengate_deployment_type( + self, + request: Optional[ + Union[goldengate_deployment_type.GetGoldengateDeploymentTypeRequest, dict] + ] = None, + *, + name: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> goldengate_deployment_type.GoldengateDeploymentType: + r"""Gets details of a single GoldenGateDeploymentType. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + def sample_get_goldengate_deployment_type(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.GetGoldengateDeploymentTypeRequest( + name="name_value", + ) + + # Make the request + response = client.get_goldengate_deployment_type(request=request) + + # Handle the response + print(response) + + Args: + request (Union[google.cloud.oracledatabase_v1.types.GetGoldengateDeploymentTypeRequest, dict]): + The request object. Message for getting a + GoldengateDeploymentType. + name (str): + Required. The name of the GoldengateDeploymentType to + retrieve. Format: + projects/{project}/locations/{location}/goldengateDeploymentTypes/{goldengate_deployment_type} + + This corresponds to the ``name`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.types.GoldengateDeploymentType: + Details of the Goldengate Deployment + Type resource. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [name] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, goldengate_deployment_type.GetGoldengateDeploymentTypeRequest + ): + request = goldengate_deployment_type.GetGoldengateDeploymentTypeRequest( + request + ) + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if name is not None: + request.name = name + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[ + self._transport.get_goldengate_deployment_type + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)), + ) + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + def list_goldengate_deployment_types( + self, + request: Optional[ + Union[goldengate_deployment_type.ListGoldengateDeploymentTypesRequest, dict] + ] = None, + *, + parent: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> pagers.ListGoldengateDeploymentTypesPager: + r"""Lists GoldenGateDeploymentTypes in a given project + and location. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + def sample_list_goldengate_deployment_types(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListGoldengateDeploymentTypesRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_goldengate_deployment_types(request=request) + + # Handle the response + for response in page_result: + print(response) + + Args: + request (Union[google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentTypesRequest, dict]): + The request object. Message for listing + GoldengateDeploymentTypes. + parent (str): + Required. The parent resource. + Format: + projects/{project}/locations/{location} + + This corresponds to the ``parent`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateDeploymentTypesPager: + Message for response to listing + GoldengateDeploymentTypes + Iterating over this object will yield + results and resolve additional pages + automatically. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [parent] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, goldengate_deployment_type.ListGoldengateDeploymentTypesRequest + ): + request = goldengate_deployment_type.ListGoldengateDeploymentTypesRequest( + request + ) + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if parent is not None: + request.parent = parent + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[ + self._transport.list_goldengate_deployment_types + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)), + ) + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # This method is paged; wrap the response in a pager, which provides + # an `__iter__` convenience method. + response = pagers.ListGoldengateDeploymentTypesPager( + method=rpc, + request=request, + response=response, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + def get_goldengate_deployment_environment( + self, + request: Optional[ + Union[ + goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest, + dict, + ] + ] = None, + *, + name: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> goldengate_deployment_environment.GoldengateDeploymentEnvironment: + r"""Gets details of a single + GoldengateDeploymentEnvironment. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + def sample_get_goldengate_deployment_environment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.GetGoldengateDeploymentEnvironmentRequest( + name="name_value", + ) + + # Make the request + response = client.get_goldengate_deployment_environment(request=request) + + # Handle the response + print(response) + + Args: + request (Union[google.cloud.oracledatabase_v1.types.GetGoldengateDeploymentEnvironmentRequest, dict]): + The request object. Message for getting a + GoldengateDeploymentEnvironment. + name (str): + Required. Name of the resource with the format: + projects/{project}/locations/{location}/goldengateDeploymentEnvironments/{goldengate_deployment_environment} + + This corresponds to the ``name`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.types.GoldengateDeploymentEnvironment: + Details of the Goldengate Deployment + Environment resource. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [name] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, + goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest, + ): + request = goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest( + request + ) + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if name is not None: + request.name = name + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[ + self._transport.get_goldengate_deployment_environment + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)), + ) + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + def list_goldengate_deployment_environments( + self, + request: Optional[ + Union[ + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest, + dict, + ] + ] = None, + *, + parent: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> pagers.ListGoldengateDeploymentEnvironmentsPager: + r"""Lists GoldengateDeploymentEnvironments in a given + project and location. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + def sample_list_goldengate_deployment_environments(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListGoldengateDeploymentEnvironmentsRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_goldengate_deployment_environments(request=request) + + # Handle the response + for response in page_result: + print(response) + + Args: + request (Union[google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentEnvironmentsRequest, dict]): + The request object. Message for listing + GoldengateDeploymentEnvironments. + parent (str): + Required. The parent, which owns this + collection of + GoldengateDeploymentEnvironments. + Format: + + projects/{project}/locations/{location} + + This corresponds to the ``parent`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateDeploymentEnvironmentsPager: + Message for response to listing + GoldengateDeploymentEnvironments + Iterating over this object will yield + results and resolve additional pages + automatically. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [parent] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest, + ): + request = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest( + request + ) + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if parent is not None: + request.parent = parent + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[ + self._transport.list_goldengate_deployment_environments + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)), + ) + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # This method is paged; wrap the response in a pager, which provides + # an `__iter__` convenience method. + response = pagers.ListGoldengateDeploymentEnvironmentsPager( + method=rpc, + request=request, + response=response, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + def get_goldengate_connection_type( + self, + request: Optional[ + Union[goldengate_connection_type.GetGoldengateConnectionTypeRequest, dict] + ] = None, + *, + name: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> goldengate_connection_type.GoldengateConnectionType: + r"""Gets details of a single GoldengateConnectionType. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + def sample_get_goldengate_connection_type(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.GetGoldengateConnectionTypeRequest( + name="name_value", + ) + + # Make the request + response = client.get_goldengate_connection_type(request=request) + + # Handle the response + print(response) + + Args: + request (Union[google.cloud.oracledatabase_v1.types.GetGoldengateConnectionTypeRequest, dict]): + The request object. Message for getting a + GoldengateConnectionType. + name (str): + Required. Name of the resource in the format: + projects/{project}/locations/{location}/goldengateConnectionTypes/{goldengate_connection_type} + + This corresponds to the ``name`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.types.GoldengateConnectionType: + Details of the Goldengate Connection + Type resource. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [name] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, goldengate_connection_type.GetGoldengateConnectionTypeRequest + ): + request = goldengate_connection_type.GetGoldengateConnectionTypeRequest( + request + ) + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if name is not None: + request.name = name + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[ + self._transport.get_goldengate_connection_type + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)), + ) + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + def list_goldengate_connection_types( + self, + request: Optional[ + Union[goldengate_connection_type.ListGoldengateConnectionTypesRequest, dict] + ] = None, + *, + parent: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> pagers.ListGoldengateConnectionTypesPager: + r"""Lists GoldengateConnectionTypes in a given project + and location. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + def sample_list_goldengate_connection_types(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListGoldengateConnectionTypesRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_goldengate_connection_types(request=request) + + # Handle the response + for response in page_result: + print(response) + + Args: + request (Union[google.cloud.oracledatabase_v1.types.ListGoldengateConnectionTypesRequest, dict]): + The request object. Message for listing + GoldengateConnectionTypes. + parent (str): + Required. Parent value for + ListGoldengateConnectionTypesRequest + Format: + projects/{project}/locations/{location} + + This corresponds to the ``parent`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateConnectionTypesPager: + Message for response to listing + GoldengateConnectionTypes + Iterating over this object will yield + results and resolve additional pages + automatically. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [parent] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, goldengate_connection_type.ListGoldengateConnectionTypesRequest + ): + request = goldengate_connection_type.ListGoldengateConnectionTypesRequest( + request + ) + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if parent is not None: + request.parent = parent + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[ + self._transport.list_goldengate_connection_types + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)), + ) + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # This method is paged; wrap the response in a pager, which provides + # an `__iter__` convenience method. + response = pagers.ListGoldengateConnectionTypesPager( + method=rpc, + request=request, + response=response, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + def list_db_versions( + self, + request: Optional[Union[db_version.ListDbVersionsRequest, dict]] = None, + *, + parent: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> pagers.ListDbVersionsPager: + r"""List DbVersions for the given project and location. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + def sample_list_db_versions(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListDbVersionsRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_db_versions(request=request) + + # Handle the response + for response in page_result: + print(response) + + Args: + request (Union[google.cloud.oracledatabase_v1.types.ListDbVersionsRequest, dict]): + The request object. The request for ``DbVersions.List``. + parent (str): + Required. The parent value for the + DbVersion resource with the format: + projects/{project}/locations/{location} + + This corresponds to the ``parent`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbVersionsPager: + The response for DbVersions.List. + + Iterating over this object will yield results and + resolve additional pages automatically. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [parent] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance(request, db_version.ListDbVersionsRequest): + request = db_version.ListDbVersionsRequest(request) + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if parent is not None: + request.parent = parent + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[self._transport.list_db_versions] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)), + ) + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # This method is paged; wrap the response in a pager, which provides + # an `__iter__` convenience method. + response = pagers.ListDbVersionsPager( + method=rpc, + request=request, + response=response, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + def list_database_character_sets( + self, + request: Optional[ + Union[database_character_set.ListDatabaseCharacterSetsRequest, dict] + ] = None, + *, + parent: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> pagers.ListDatabaseCharacterSetsPager: + r"""List DatabaseCharacterSets for the given project and + location. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + def sample_list_database_character_sets(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListDatabaseCharacterSetsRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_database_character_sets(request=request) + + # Handle the response + for response in page_result: + print(response) + + Args: + request (Union[google.cloud.oracledatabase_v1.types.ListDatabaseCharacterSetsRequest, dict]): + The request object. The request for ``DatabaseCharacterSet.List``. + parent (str): + Required. The parent value for + DatabaseCharacterSets in the following + format: + projects/{project}/locations/{location}. + + This corresponds to the ``parent`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDatabaseCharacterSetsPager: + The response for DatabaseCharacterSet.List. + + Iterating over this object will yield results and + resolve additional pages automatically. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [parent] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, database_character_set.ListDatabaseCharacterSetsRequest + ): + request = database_character_set.ListDatabaseCharacterSetsRequest(request) + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if parent is not None: + request.parent = parent + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[ + self._transport.list_database_character_sets + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)), + ) + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # This method is paged; wrap the response in a pager, which provides + # an `__iter__` convenience method. + response = pagers.ListDatabaseCharacterSetsPager( + method=rpc, + request=request, + response=response, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + def list_goldengate_connection_assignments( + self, + request: Optional[ + Union[ + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest, + dict, + ] + ] = None, + *, + parent: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> pagers.ListGoldengateConnectionAssignmentsPager: + r"""Lists GoldengateConnectionAssignments in a given + project and location. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + def sample_list_goldengate_connection_assignments(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListGoldengateConnectionAssignmentsRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_goldengate_connection_assignments(request=request) + + # Handle the response + for response in page_result: + print(response) + + Args: + request (Union[google.cloud.oracledatabase_v1.types.ListGoldengateConnectionAssignmentsRequest, dict]): + The request object. Request message for listing + GoldengateConnectionAssignments. + parent (str): + Required. The parent value for the + GoldengateConnectionAssignments. Format: + projects/{project}/locations/{location} + + This corresponds to the ``parent`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateConnectionAssignmentsPager: + Response message for listing + GoldengateConnectionAssignments. + Iterating over this object will yield + results and resolve additional pages + automatically. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [parent] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest, + ): + request = goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest( + request + ) + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if parent is not None: + request.parent = parent + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[ + self._transport.list_goldengate_connection_assignments + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)), + ) + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # This method is paged; wrap the response in a pager, which provides + # an `__iter__` convenience method. + response = pagers.ListGoldengateConnectionAssignmentsPager( + method=rpc, + request=request, + response=response, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + def get_goldengate_connection_assignment( + self, + request: Optional[ + Union[ + goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest, + dict, + ] + ] = None, + *, + name: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> goldengate_connection_assignment.GoldengateConnectionAssignment: + r"""Gets details of a single + GoldengateConnectionAssignment. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + def sample_get_goldengate_connection_assignment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.GetGoldengateConnectionAssignmentRequest( + name="name_value", + ) + + # Make the request + response = client.get_goldengate_connection_assignment(request=request) + + # Handle the response + print(response) + + Args: + request (Union[google.cloud.oracledatabase_v1.types.GetGoldengateConnectionAssignmentRequest, dict]): + The request object. Request message for getting a + GoldengateConnectionAssignment. + name (str): + Required. The name of the GoldengateConnectionAssignment + to retrieve. Format: + projects/{project}/locations/{location}/goldengateConnectionAssignments/{goldengate_connection_assignment} + + This corresponds to the ``name`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.types.GoldengateConnectionAssignment: + Represents the metadata of a + Goldengate Connection Assignment. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [name] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, + goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest, + ): + request = goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest( + request + ) + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if name is not None: + request.name = name + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[ + self._transport.get_goldengate_connection_assignment + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)), + ) + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Done; return the response. + return response + + def create_goldengate_connection_assignment( + self, + request: Optional[ + Union[ + gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest, + dict, + ] + ] = None, + *, + parent: Optional[str] = None, + goldengate_connection_assignment: Optional[ + gco_goldengate_connection_assignment.GoldengateConnectionAssignment + ] = None, + goldengate_connection_assignment_id: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operation.Operation: + r"""Creates a new GoldengateConnectionAssignment in a + given project and location. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + def sample_create_goldengate_connection_assignment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + goldengate_connection_assignment = oracledatabase_v1.GoldengateConnectionAssignment() + goldengate_connection_assignment.properties.goldengate_connection = "goldengate_connection_value" + goldengate_connection_assignment.properties.goldengate_deployment = "goldengate_deployment_value" + + request = oracledatabase_v1.CreateGoldengateConnectionAssignmentRequest( + parent="parent_value", + goldengate_connection_assignment_id="goldengate_connection_assignment_id_value", + goldengate_connection_assignment=goldengate_connection_assignment, + ) + + # Make the request + operation = client.create_goldengate_connection_assignment(request=request) + + print("Waiting for operation to complete...") + + response = operation.result() + + # Handle the response + print(response) + + Args: + request (Union[google.cloud.oracledatabase_v1.types.CreateGoldengateConnectionAssignmentRequest, dict]): + The request object. Request message for creating a + GoldengateConnectionAssignment. + parent (str): + Required. The parent resource where + this GoldengateConnectionAssignment will + be created. Format: + projects/{project}/locations/{location} + + This corresponds to the ``parent`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + goldengate_connection_assignment (google.cloud.oracledatabase_v1.types.GoldengateConnectionAssignment): + Required. The + GoldengateConnectionAssignment to + create. + + This corresponds to the ``goldengate_connection_assignment`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + goldengate_connection_assignment_id (str): + Required. The ID of the + GoldengateConnectionAssignment to + create. + + This corresponds to the ``goldengate_connection_assignment_id`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.api_core.operation.Operation: + An object representing a long-running operation. + + The result type for the operation will be + :class:`google.cloud.oracledatabase_v1.types.GoldengateConnectionAssignment` + Represents the metadata of a Goldengate Connection + Assignment. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [ + parent, + goldengate_connection_assignment, + goldengate_connection_assignment_id, + ] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, + gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest, + ): + request = gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest( + request + ) + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if parent is not None: + request.parent = parent + if goldengate_connection_assignment is not None: + request.goldengate_connection_assignment = ( + goldengate_connection_assignment + ) + if goldengate_connection_assignment_id is not None: + request.goldengate_connection_assignment_id = ( + goldengate_connection_assignment_id + ) + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[ + self._transport.create_goldengate_connection_assignment + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)), + ) + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Wrap the response in an operation future. + response = operation.from_gapic( + response, + self._transport.operations_client, + gco_goldengate_connection_assignment.GoldengateConnectionAssignment, + metadata_type=oracledatabase.OperationMetadata, + ) + + # Done; return the response. + return response + + def delete_goldengate_connection_assignment( + self, + request: Optional[ + Union[ + goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest, + dict, + ] + ] = None, + *, + name: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operation.Operation: + r"""Deletes a single GoldengateConnectionAssignment. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + def sample_delete_goldengate_connection_assignment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.DeleteGoldengateConnectionAssignmentRequest( + name="name_value", + ) + + # Make the request + operation = client.delete_goldengate_connection_assignment(request=request) + + print("Waiting for operation to complete...") + + response = operation.result() + + # Handle the response + print(response) + + Args: + request (Union[google.cloud.oracledatabase_v1.types.DeleteGoldengateConnectionAssignmentRequest, dict]): + The request object. Request message for deleting a + GoldengateConnectionAssignment. + name (str): + Required. The name of the GoldengateConnectionAssignment + to delete. Format: + projects/{project}/locations/{location}/goldengateConnectionAssignments/{goldengate_connection_assignment} + + This corresponds to the ``name`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.api_core.operation.Operation: + An object representing a long-running operation. + + The result type for the operation will be :class:`google.protobuf.empty_pb2.Empty` A generic empty message that you can re-use to avoid defining duplicated + empty messages in your APIs. A typical example is to + use it as the request or the response type of an API + method. For instance: + + service Foo { + rpc Bar(google.protobuf.Empty) returns + (google.protobuf.Empty); + + } + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [name] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, + goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest, + ): + request = goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest( + request + ) + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if name is not None: + request.name = name + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[ + self._transport.delete_goldengate_connection_assignment + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)), + ) + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + request, + retry=retry, + timeout=timeout, + metadata=metadata, + ) + + # Wrap the response in an operation future. + response = operation.from_gapic( + response, + self._transport.operations_client, + empty_pb2.Empty, + metadata_type=oracledatabase.OperationMetadata, + ) + + # Done; return the response. + return response + + def test_goldengate_connection_assignment( + self, + request: Optional[ + Union[ + goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest, + dict, + ] + ] = None, + *, + name: Optional[str] = None, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse: + r"""Tests a single GoldengateConnectionAssignment. + + .. code-block:: python + + # This snippet has been automatically generated and should be regarded as a + # code template only. + # It will require modifications to work: + # - It may require correct/in-range values for request initialization. + # - It may require specifying regional endpoints when creating the service + # client as shown in: + # https://googleapis.dev/python/google-api-core/latest/client_options.html + from google.cloud import oracledatabase_v1 + + def sample_test_goldengate_connection_assignment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.TestGoldengateConnectionAssignmentRequest( + name="name_value", + ) + + # Make the request + response = client.test_goldengate_connection_assignment(request=request) + + # Handle the response + print(response) + + Args: + request (Union[google.cloud.oracledatabase_v1.types.TestGoldengateConnectionAssignmentRequest, dict]): + The request object. Request message for + TestGoldengateConnectionAssignment. + name (str): + Required. Name of the connection assignment for which to + test connection. + projects/{project}/locations/{region}/goldengateConnectionAssignments/{goldengate_connection_assignment} + + This corresponds to the ``name`` field + on the ``request`` instance; if ``request`` is provided, this + should not be set. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + google.cloud.oracledatabase_v1.types.TestGoldengateConnectionAssignmentResponse: + The result of the connectivity test + performed between the Goldengate + deployment and the associated database / + service. + + """ + # Create or coerce a protobuf request object. + # - Quick check: If we got a request object, we should *not* have + # gotten any keyword arguments that map to the request. + flattened_params = [name] + has_flattened_params = ( + len([param for param in flattened_params if param is not None]) > 0 + ) + if request is not None and has_flattened_params: + raise ValueError( + "If the `request` argument is set, then none of " + "the individual field arguments should be set." + ) + + # - Use the request object if provided (there's no risk of modifying the input as + # there are no flattened fields), or create one. + if not isinstance( + request, + goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest, + ): + request = goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest( + request + ) + # If we have keyword arguments corresponding to fields on the + # request, apply these. + if name is not None: + request.name = name + + # Wrap the RPC method; this adds retry and timeout information, + # and friendly error handling. + rpc = self._transport._wrapped_methods[ + self._transport.test_goldengate_connection_assignment + ] + + # Certain fields should be provided within the metadata header; + # add these here. + metadata = tuple(metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)), + ) + + # Validate the universe domain. + self._validate_universe_domain() + + # Send the request. + response = rpc( + request, retry=retry, timeout=timeout, metadata=metadata, diff --git a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/pagers.py b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/pagers.py index bc13e6203595..cc780af52233 100644 --- a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/pagers.py +++ b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/pagers.py @@ -56,6 +56,13 @@ exadb_vm_cluster, exascale_db_storage_vault, gi_version, + goldengate_connection, + goldengate_connection_assignment, + goldengate_connection_type, + goldengate_deployment, + goldengate_deployment_environment, + goldengate_deployment_type, + goldengate_deployment_version, minor_version, odb_network, odb_subnet, @@ -3265,6 +3272,1041 @@ def __repr__(self) -> str: return "{0}<{1!r}>".format(self.__class__.__name__, self._response) +class ListGoldengateDeploymentsPager: + """A pager for iterating through ``list_goldengate_deployments`` requests. + + This class thinly wraps an initial + :class:`google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentsResponse` object, and + provides an ``__iter__`` method to iterate through its + ``goldengate_deployments`` field. + + If there are more pages, the ``__iter__`` method will make additional + ``ListGoldengateDeployments`` requests and continue to iterate + through the ``goldengate_deployments`` field on the + corresponding responses. + + All the usual :class:`google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentsResponse` + attributes are available on the pager. If multiple requests are made, only + the most recent response is retained, and thus used for attribute lookup. + """ + + def __init__( + self, + method: Callable[..., goldengate_deployment.ListGoldengateDeploymentsResponse], + request: goldengate_deployment.ListGoldengateDeploymentsRequest, + response: goldengate_deployment.ListGoldengateDeploymentsResponse, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ): + """Instantiate the pager. + + Args: + method (Callable): The method that was originally called, and + which instantiated this pager. + request (google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentsRequest): + The initial request object. + response (google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentsResponse): + The initial response object. + retry (google.api_core.retry.Retry): Designation of what errors, + if any, should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + """ + self._method = method + self._request = goldengate_deployment.ListGoldengateDeploymentsRequest(request) + self._response = response + self._retry = retry + self._timeout = timeout + self._metadata = metadata + + def __getattr__(self, name: str) -> Any: + return getattr(self._response, name) + + @property + def pages( + self, + ) -> Iterator[goldengate_deployment.ListGoldengateDeploymentsResponse]: + yield self._response + while self._response.next_page_token: + self._request.page_token = self._response.next_page_token + self._response = self._method( + self._request, + retry=self._retry, + timeout=self._timeout, + metadata=self._metadata, + ) + yield self._response + + def __iter__(self) -> Iterator[goldengate_deployment.GoldengateDeployment]: + for page in self.pages: + yield from page.goldengate_deployments + + def __repr__(self) -> str: + return "{0}<{1!r}>".format(self.__class__.__name__, self._response) + + +class ListGoldengateDeploymentsAsyncPager: + """A pager for iterating through ``list_goldengate_deployments`` requests. + + This class thinly wraps an initial + :class:`google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentsResponse` object, and + provides an ``__aiter__`` method to iterate through its + ``goldengate_deployments`` field. + + If there are more pages, the ``__aiter__`` method will make additional + ``ListGoldengateDeployments`` requests and continue to iterate + through the ``goldengate_deployments`` field on the + corresponding responses. + + All the usual :class:`google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentsResponse` + attributes are available on the pager. If multiple requests are made, only + the most recent response is retained, and thus used for attribute lookup. + """ + + def __init__( + self, + method: Callable[ + ..., Awaitable[goldengate_deployment.ListGoldengateDeploymentsResponse] + ], + request: goldengate_deployment.ListGoldengateDeploymentsRequest, + response: goldengate_deployment.ListGoldengateDeploymentsResponse, + *, + retry: OptionalAsyncRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ): + """Instantiates the pager. + + Args: + method (Callable): The method that was originally called, and + which instantiated this pager. + request (google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentsRequest): + The initial request object. + response (google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentsResponse): + The initial response object. + retry (google.api_core.retry.AsyncRetry): Designation of what errors, + if any, should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + """ + self._method = method + self._request = goldengate_deployment.ListGoldengateDeploymentsRequest(request) + self._response = response + self._retry = retry + self._timeout = timeout + self._metadata = metadata + + def __getattr__(self, name: str) -> Any: + return getattr(self._response, name) + + @property + async def pages( + self, + ) -> AsyncIterator[goldengate_deployment.ListGoldengateDeploymentsResponse]: + yield self._response + while self._response.next_page_token: + self._request.page_token = self._response.next_page_token + self._response = await self._method( + self._request, + retry=self._retry, + timeout=self._timeout, + metadata=self._metadata, + ) + yield self._response + + def __aiter__(self) -> AsyncIterator[goldengate_deployment.GoldengateDeployment]: + async def async_generator(): + async for page in self.pages: + for response in page.goldengate_deployments: + yield response + + return async_generator() + + def __repr__(self) -> str: + return "{0}<{1!r}>".format(self.__class__.__name__, self._response) + + +class ListGoldengateConnectionsPager: + """A pager for iterating through ``list_goldengate_connections`` requests. + + This class thinly wraps an initial + :class:`google.cloud.oracledatabase_v1.types.ListGoldengateConnectionsResponse` object, and + provides an ``__iter__`` method to iterate through its + ``goldengate_connections`` field. + + If there are more pages, the ``__iter__`` method will make additional + ``ListGoldengateConnections`` requests and continue to iterate + through the ``goldengate_connections`` field on the + corresponding responses. + + All the usual :class:`google.cloud.oracledatabase_v1.types.ListGoldengateConnectionsResponse` + attributes are available on the pager. If multiple requests are made, only + the most recent response is retained, and thus used for attribute lookup. + """ + + def __init__( + self, + method: Callable[..., goldengate_connection.ListGoldengateConnectionsResponse], + request: goldengate_connection.ListGoldengateConnectionsRequest, + response: goldengate_connection.ListGoldengateConnectionsResponse, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ): + """Instantiate the pager. + + Args: + method (Callable): The method that was originally called, and + which instantiated this pager. + request (google.cloud.oracledatabase_v1.types.ListGoldengateConnectionsRequest): + The initial request object. + response (google.cloud.oracledatabase_v1.types.ListGoldengateConnectionsResponse): + The initial response object. + retry (google.api_core.retry.Retry): Designation of what errors, + if any, should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + """ + self._method = method + self._request = goldengate_connection.ListGoldengateConnectionsRequest(request) + self._response = response + self._retry = retry + self._timeout = timeout + self._metadata = metadata + + def __getattr__(self, name: str) -> Any: + return getattr(self._response, name) + + @property + def pages( + self, + ) -> Iterator[goldengate_connection.ListGoldengateConnectionsResponse]: + yield self._response + while self._response.next_page_token: + self._request.page_token = self._response.next_page_token + self._response = self._method( + self._request, + retry=self._retry, + timeout=self._timeout, + metadata=self._metadata, + ) + yield self._response + + def __iter__(self) -> Iterator[goldengate_connection.GoldengateConnection]: + for page in self.pages: + yield from page.goldengate_connections + + def __repr__(self) -> str: + return "{0}<{1!r}>".format(self.__class__.__name__, self._response) + + +class ListGoldengateConnectionsAsyncPager: + """A pager for iterating through ``list_goldengate_connections`` requests. + + This class thinly wraps an initial + :class:`google.cloud.oracledatabase_v1.types.ListGoldengateConnectionsResponse` object, and + provides an ``__aiter__`` method to iterate through its + ``goldengate_connections`` field. + + If there are more pages, the ``__aiter__`` method will make additional + ``ListGoldengateConnections`` requests and continue to iterate + through the ``goldengate_connections`` field on the + corresponding responses. + + All the usual :class:`google.cloud.oracledatabase_v1.types.ListGoldengateConnectionsResponse` + attributes are available on the pager. If multiple requests are made, only + the most recent response is retained, and thus used for attribute lookup. + """ + + def __init__( + self, + method: Callable[ + ..., Awaitable[goldengate_connection.ListGoldengateConnectionsResponse] + ], + request: goldengate_connection.ListGoldengateConnectionsRequest, + response: goldengate_connection.ListGoldengateConnectionsResponse, + *, + retry: OptionalAsyncRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ): + """Instantiates the pager. + + Args: + method (Callable): The method that was originally called, and + which instantiated this pager. + request (google.cloud.oracledatabase_v1.types.ListGoldengateConnectionsRequest): + The initial request object. + response (google.cloud.oracledatabase_v1.types.ListGoldengateConnectionsResponse): + The initial response object. + retry (google.api_core.retry.AsyncRetry): Designation of what errors, + if any, should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + """ + self._method = method + self._request = goldengate_connection.ListGoldengateConnectionsRequest(request) + self._response = response + self._retry = retry + self._timeout = timeout + self._metadata = metadata + + def __getattr__(self, name: str) -> Any: + return getattr(self._response, name) + + @property + async def pages( + self, + ) -> AsyncIterator[goldengate_connection.ListGoldengateConnectionsResponse]: + yield self._response + while self._response.next_page_token: + self._request.page_token = self._response.next_page_token + self._response = await self._method( + self._request, + retry=self._retry, + timeout=self._timeout, + metadata=self._metadata, + ) + yield self._response + + def __aiter__(self) -> AsyncIterator[goldengate_connection.GoldengateConnection]: + async def async_generator(): + async for page in self.pages: + for response in page.goldengate_connections: + yield response + + return async_generator() + + def __repr__(self) -> str: + return "{0}<{1!r}>".format(self.__class__.__name__, self._response) + + +class ListGoldengateDeploymentVersionsPager: + """A pager for iterating through ``list_goldengate_deployment_versions`` requests. + + This class thinly wraps an initial + :class:`google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentVersionsResponse` object, and + provides an ``__iter__`` method to iterate through its + ``goldengate_deployment_versions`` field. + + If there are more pages, the ``__iter__`` method will make additional + ``ListGoldengateDeploymentVersions`` requests and continue to iterate + through the ``goldengate_deployment_versions`` field on the + corresponding responses. + + All the usual :class:`google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentVersionsResponse` + attributes are available on the pager. If multiple requests are made, only + the most recent response is retained, and thus used for attribute lookup. + """ + + def __init__( + self, + method: Callable[ + ..., goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse + ], + request: goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest, + response: goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ): + """Instantiate the pager. + + Args: + method (Callable): The method that was originally called, and + which instantiated this pager. + request (google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentVersionsRequest): + The initial request object. + response (google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentVersionsResponse): + The initial response object. + retry (google.api_core.retry.Retry): Designation of what errors, + if any, should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + """ + self._method = method + self._request = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest( + request + ) + ) + self._response = response + self._retry = retry + self._timeout = timeout + self._metadata = metadata + + def __getattr__(self, name: str) -> Any: + return getattr(self._response, name) + + @property + def pages( + self, + ) -> Iterator[ + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse + ]: + yield self._response + while self._response.next_page_token: + self._request.page_token = self._response.next_page_token + self._response = self._method( + self._request, + retry=self._retry, + timeout=self._timeout, + metadata=self._metadata, + ) + yield self._response + + def __iter__( + self, + ) -> Iterator[goldengate_deployment_version.GoldengateDeploymentVersion]: + for page in self.pages: + yield from page.goldengate_deployment_versions + + def __repr__(self) -> str: + return "{0}<{1!r}>".format(self.__class__.__name__, self._response) + + +class ListGoldengateDeploymentVersionsAsyncPager: + """A pager for iterating through ``list_goldengate_deployment_versions`` requests. + + This class thinly wraps an initial + :class:`google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentVersionsResponse` object, and + provides an ``__aiter__`` method to iterate through its + ``goldengate_deployment_versions`` field. + + If there are more pages, the ``__aiter__`` method will make additional + ``ListGoldengateDeploymentVersions`` requests and continue to iterate + through the ``goldengate_deployment_versions`` field on the + corresponding responses. + + All the usual :class:`google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentVersionsResponse` + attributes are available on the pager. If multiple requests are made, only + the most recent response is retained, and thus used for attribute lookup. + """ + + def __init__( + self, + method: Callable[ + ..., + Awaitable[ + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse + ], + ], + request: goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest, + response: goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse, + *, + retry: OptionalAsyncRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ): + """Instantiates the pager. + + Args: + method (Callable): The method that was originally called, and + which instantiated this pager. + request (google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentVersionsRequest): + The initial request object. + response (google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentVersionsResponse): + The initial response object. + retry (google.api_core.retry.AsyncRetry): Designation of what errors, + if any, should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + """ + self._method = method + self._request = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest( + request + ) + ) + self._response = response + self._retry = retry + self._timeout = timeout + self._metadata = metadata + + def __getattr__(self, name: str) -> Any: + return getattr(self._response, name) + + @property + async def pages( + self, + ) -> AsyncIterator[ + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse + ]: + yield self._response + while self._response.next_page_token: + self._request.page_token = self._response.next_page_token + self._response = await self._method( + self._request, + retry=self._retry, + timeout=self._timeout, + metadata=self._metadata, + ) + yield self._response + + def __aiter__( + self, + ) -> AsyncIterator[goldengate_deployment_version.GoldengateDeploymentVersion]: + async def async_generator(): + async for page in self.pages: + for response in page.goldengate_deployment_versions: + yield response + + return async_generator() + + def __repr__(self) -> str: + return "{0}<{1!r}>".format(self.__class__.__name__, self._response) + + +class ListGoldengateDeploymentTypesPager: + """A pager for iterating through ``list_goldengate_deployment_types`` requests. + + This class thinly wraps an initial + :class:`google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentTypesResponse` object, and + provides an ``__iter__`` method to iterate through its + ``goldengate_deployment_types`` field. + + If there are more pages, the ``__iter__`` method will make additional + ``ListGoldengateDeploymentTypes`` requests and continue to iterate + through the ``goldengate_deployment_types`` field on the + corresponding responses. + + All the usual :class:`google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentTypesResponse` + attributes are available on the pager. If multiple requests are made, only + the most recent response is retained, and thus used for attribute lookup. + """ + + def __init__( + self, + method: Callable[ + ..., goldengate_deployment_type.ListGoldengateDeploymentTypesResponse + ], + request: goldengate_deployment_type.ListGoldengateDeploymentTypesRequest, + response: goldengate_deployment_type.ListGoldengateDeploymentTypesResponse, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ): + """Instantiate the pager. + + Args: + method (Callable): The method that was originally called, and + which instantiated this pager. + request (google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentTypesRequest): + The initial request object. + response (google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentTypesResponse): + The initial response object. + retry (google.api_core.retry.Retry): Designation of what errors, + if any, should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + """ + self._method = method + self._request = goldengate_deployment_type.ListGoldengateDeploymentTypesRequest( + request + ) + self._response = response + self._retry = retry + self._timeout = timeout + self._metadata = metadata + + def __getattr__(self, name: str) -> Any: + return getattr(self._response, name) + + @property + def pages( + self, + ) -> Iterator[goldengate_deployment_type.ListGoldengateDeploymentTypesResponse]: + yield self._response + while self._response.next_page_token: + self._request.page_token = self._response.next_page_token + self._response = self._method( + self._request, + retry=self._retry, + timeout=self._timeout, + metadata=self._metadata, + ) + yield self._response + + def __iter__(self) -> Iterator[goldengate_deployment_type.GoldengateDeploymentType]: + for page in self.pages: + yield from page.goldengate_deployment_types + + def __repr__(self) -> str: + return "{0}<{1!r}>".format(self.__class__.__name__, self._response) + + +class ListGoldengateDeploymentTypesAsyncPager: + """A pager for iterating through ``list_goldengate_deployment_types`` requests. + + This class thinly wraps an initial + :class:`google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentTypesResponse` object, and + provides an ``__aiter__`` method to iterate through its + ``goldengate_deployment_types`` field. + + If there are more pages, the ``__aiter__`` method will make additional + ``ListGoldengateDeploymentTypes`` requests and continue to iterate + through the ``goldengate_deployment_types`` field on the + corresponding responses. + + All the usual :class:`google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentTypesResponse` + attributes are available on the pager. If multiple requests are made, only + the most recent response is retained, and thus used for attribute lookup. + """ + + def __init__( + self, + method: Callable[ + ..., + Awaitable[goldengate_deployment_type.ListGoldengateDeploymentTypesResponse], + ], + request: goldengate_deployment_type.ListGoldengateDeploymentTypesRequest, + response: goldengate_deployment_type.ListGoldengateDeploymentTypesResponse, + *, + retry: OptionalAsyncRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ): + """Instantiates the pager. + + Args: + method (Callable): The method that was originally called, and + which instantiated this pager. + request (google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentTypesRequest): + The initial request object. + response (google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentTypesResponse): + The initial response object. + retry (google.api_core.retry.AsyncRetry): Designation of what errors, + if any, should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + """ + self._method = method + self._request = goldengate_deployment_type.ListGoldengateDeploymentTypesRequest( + request + ) + self._response = response + self._retry = retry + self._timeout = timeout + self._metadata = metadata + + def __getattr__(self, name: str) -> Any: + return getattr(self._response, name) + + @property + async def pages( + self, + ) -> AsyncIterator[ + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse + ]: + yield self._response + while self._response.next_page_token: + self._request.page_token = self._response.next_page_token + self._response = await self._method( + self._request, + retry=self._retry, + timeout=self._timeout, + metadata=self._metadata, + ) + yield self._response + + def __aiter__( + self, + ) -> AsyncIterator[goldengate_deployment_type.GoldengateDeploymentType]: + async def async_generator(): + async for page in self.pages: + for response in page.goldengate_deployment_types: + yield response + + return async_generator() + + def __repr__(self) -> str: + return "{0}<{1!r}>".format(self.__class__.__name__, self._response) + + +class ListGoldengateDeploymentEnvironmentsPager: + """A pager for iterating through ``list_goldengate_deployment_environments`` requests. + + This class thinly wraps an initial + :class:`google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentEnvironmentsResponse` object, and + provides an ``__iter__`` method to iterate through its + ``goldengate_deployment_environments`` field. + + If there are more pages, the ``__iter__`` method will make additional + ``ListGoldengateDeploymentEnvironments`` requests and continue to iterate + through the ``goldengate_deployment_environments`` field on the + corresponding responses. + + All the usual :class:`google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentEnvironmentsResponse` + attributes are available on the pager. If multiple requests are made, only + the most recent response is retained, and thus used for attribute lookup. + """ + + def __init__( + self, + method: Callable[ + ..., + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse, + ], + request: goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest, + response: goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ): + """Instantiate the pager. + + Args: + method (Callable): The method that was originally called, and + which instantiated this pager. + request (google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentEnvironmentsRequest): + The initial request object. + response (google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentEnvironmentsResponse): + The initial response object. + retry (google.api_core.retry.Retry): Designation of what errors, + if any, should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + """ + self._method = method + self._request = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest( + request + ) + self._response = response + self._retry = retry + self._timeout = timeout + self._metadata = metadata + + def __getattr__(self, name: str) -> Any: + return getattr(self._response, name) + + @property + def pages( + self, + ) -> Iterator[ + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse + ]: + yield self._response + while self._response.next_page_token: + self._request.page_token = self._response.next_page_token + self._response = self._method( + self._request, + retry=self._retry, + timeout=self._timeout, + metadata=self._metadata, + ) + yield self._response + + def __iter__( + self, + ) -> Iterator[goldengate_deployment_environment.GoldengateDeploymentEnvironment]: + for page in self.pages: + yield from page.goldengate_deployment_environments + + def __repr__(self) -> str: + return "{0}<{1!r}>".format(self.__class__.__name__, self._response) + + +class ListGoldengateDeploymentEnvironmentsAsyncPager: + """A pager for iterating through ``list_goldengate_deployment_environments`` requests. + + This class thinly wraps an initial + :class:`google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentEnvironmentsResponse` object, and + provides an ``__aiter__`` method to iterate through its + ``goldengate_deployment_environments`` field. + + If there are more pages, the ``__aiter__`` method will make additional + ``ListGoldengateDeploymentEnvironments`` requests and continue to iterate + through the ``goldengate_deployment_environments`` field on the + corresponding responses. + + All the usual :class:`google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentEnvironmentsResponse` + attributes are available on the pager. If multiple requests are made, only + the most recent response is retained, and thus used for attribute lookup. + """ + + def __init__( + self, + method: Callable[ + ..., + Awaitable[ + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse + ], + ], + request: goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest, + response: goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse, + *, + retry: OptionalAsyncRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ): + """Instantiates the pager. + + Args: + method (Callable): The method that was originally called, and + which instantiated this pager. + request (google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentEnvironmentsRequest): + The initial request object. + response (google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentEnvironmentsResponse): + The initial response object. + retry (google.api_core.retry.AsyncRetry): Designation of what errors, + if any, should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + """ + self._method = method + self._request = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest( + request + ) + self._response = response + self._retry = retry + self._timeout = timeout + self._metadata = metadata + + def __getattr__(self, name: str) -> Any: + return getattr(self._response, name) + + @property + async def pages( + self, + ) -> AsyncIterator[ + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse + ]: + yield self._response + while self._response.next_page_token: + self._request.page_token = self._response.next_page_token + self._response = await self._method( + self._request, + retry=self._retry, + timeout=self._timeout, + metadata=self._metadata, + ) + yield self._response + + def __aiter__( + self, + ) -> AsyncIterator[ + goldengate_deployment_environment.GoldengateDeploymentEnvironment + ]: + async def async_generator(): + async for page in self.pages: + for response in page.goldengate_deployment_environments: + yield response + + return async_generator() + + def __repr__(self) -> str: + return "{0}<{1!r}>".format(self.__class__.__name__, self._response) + + +class ListGoldengateConnectionTypesPager: + """A pager for iterating through ``list_goldengate_connection_types`` requests. + + This class thinly wraps an initial + :class:`google.cloud.oracledatabase_v1.types.ListGoldengateConnectionTypesResponse` object, and + provides an ``__iter__`` method to iterate through its + ``goldengate_connection_types`` field. + + If there are more pages, the ``__iter__`` method will make additional + ``ListGoldengateConnectionTypes`` requests and continue to iterate + through the ``goldengate_connection_types`` field on the + corresponding responses. + + All the usual :class:`google.cloud.oracledatabase_v1.types.ListGoldengateConnectionTypesResponse` + attributes are available on the pager. If multiple requests are made, only + the most recent response is retained, and thus used for attribute lookup. + """ + + def __init__( + self, + method: Callable[ + ..., goldengate_connection_type.ListGoldengateConnectionTypesResponse + ], + request: goldengate_connection_type.ListGoldengateConnectionTypesRequest, + response: goldengate_connection_type.ListGoldengateConnectionTypesResponse, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ): + """Instantiate the pager. + + Args: + method (Callable): The method that was originally called, and + which instantiated this pager. + request (google.cloud.oracledatabase_v1.types.ListGoldengateConnectionTypesRequest): + The initial request object. + response (google.cloud.oracledatabase_v1.types.ListGoldengateConnectionTypesResponse): + The initial response object. + retry (google.api_core.retry.Retry): Designation of what errors, + if any, should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + """ + self._method = method + self._request = goldengate_connection_type.ListGoldengateConnectionTypesRequest( + request + ) + self._response = response + self._retry = retry + self._timeout = timeout + self._metadata = metadata + + def __getattr__(self, name: str) -> Any: + return getattr(self._response, name) + + @property + def pages( + self, + ) -> Iterator[goldengate_connection_type.ListGoldengateConnectionTypesResponse]: + yield self._response + while self._response.next_page_token: + self._request.page_token = self._response.next_page_token + self._response = self._method( + self._request, + retry=self._retry, + timeout=self._timeout, + metadata=self._metadata, + ) + yield self._response + + def __iter__(self) -> Iterator[goldengate_connection_type.GoldengateConnectionType]: + for page in self.pages: + yield from page.goldengate_connection_types + + def __repr__(self) -> str: + return "{0}<{1!r}>".format(self.__class__.__name__, self._response) + + +class ListGoldengateConnectionTypesAsyncPager: + """A pager for iterating through ``list_goldengate_connection_types`` requests. + + This class thinly wraps an initial + :class:`google.cloud.oracledatabase_v1.types.ListGoldengateConnectionTypesResponse` object, and + provides an ``__aiter__`` method to iterate through its + ``goldengate_connection_types`` field. + + If there are more pages, the ``__aiter__`` method will make additional + ``ListGoldengateConnectionTypes`` requests and continue to iterate + through the ``goldengate_connection_types`` field on the + corresponding responses. + + All the usual :class:`google.cloud.oracledatabase_v1.types.ListGoldengateConnectionTypesResponse` + attributes are available on the pager. If multiple requests are made, only + the most recent response is retained, and thus used for attribute lookup. + """ + + def __init__( + self, + method: Callable[ + ..., + Awaitable[goldengate_connection_type.ListGoldengateConnectionTypesResponse], + ], + request: goldengate_connection_type.ListGoldengateConnectionTypesRequest, + response: goldengate_connection_type.ListGoldengateConnectionTypesResponse, + *, + retry: OptionalAsyncRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ): + """Instantiates the pager. + + Args: + method (Callable): The method that was originally called, and + which instantiated this pager. + request (google.cloud.oracledatabase_v1.types.ListGoldengateConnectionTypesRequest): + The initial request object. + response (google.cloud.oracledatabase_v1.types.ListGoldengateConnectionTypesResponse): + The initial response object. + retry (google.api_core.retry.AsyncRetry): Designation of what errors, + if any, should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + """ + self._method = method + self._request = goldengate_connection_type.ListGoldengateConnectionTypesRequest( + request + ) + self._response = response + self._retry = retry + self._timeout = timeout + self._metadata = metadata + + def __getattr__(self, name: str) -> Any: + return getattr(self._response, name) + + @property + async def pages( + self, + ) -> AsyncIterator[ + goldengate_connection_type.ListGoldengateConnectionTypesResponse + ]: + yield self._response + while self._response.next_page_token: + self._request.page_token = self._response.next_page_token + self._response = await self._method( + self._request, + retry=self._retry, + timeout=self._timeout, + metadata=self._metadata, + ) + yield self._response + + def __aiter__( + self, + ) -> AsyncIterator[goldengate_connection_type.GoldengateConnectionType]: + async def async_generator(): + async for page in self.pages: + for response in page.goldengate_connection_types: + yield response + + return async_generator() + + def __repr__(self) -> str: + return "{0}<{1!r}>".format(self.__class__.__name__, self._response) + + class ListDbVersionsPager: """A pager for iterating through ``list_db_versions`` requests. @@ -3581,3 +4623,187 @@ async def async_generator(): def __repr__(self) -> str: return "{0}<{1!r}>".format(self.__class__.__name__, self._response) + + +class ListGoldengateConnectionAssignmentsPager: + """A pager for iterating through ``list_goldengate_connection_assignments`` requests. + + This class thinly wraps an initial + :class:`google.cloud.oracledatabase_v1.types.ListGoldengateConnectionAssignmentsResponse` object, and + provides an ``__iter__`` method to iterate through its + ``goldengate_connection_assignments`` field. + + If there are more pages, the ``__iter__`` method will make additional + ``ListGoldengateConnectionAssignments`` requests and continue to iterate + through the ``goldengate_connection_assignments`` field on the + corresponding responses. + + All the usual :class:`google.cloud.oracledatabase_v1.types.ListGoldengateConnectionAssignmentsResponse` + attributes are available on the pager. If multiple requests are made, only + the most recent response is retained, and thus used for attribute lookup. + """ + + def __init__( + self, + method: Callable[ + ..., + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse, + ], + request: goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest, + response: goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ): + """Instantiate the pager. + + Args: + method (Callable): The method that was originally called, and + which instantiated this pager. + request (google.cloud.oracledatabase_v1.types.ListGoldengateConnectionAssignmentsRequest): + The initial request object. + response (google.cloud.oracledatabase_v1.types.ListGoldengateConnectionAssignmentsResponse): + The initial response object. + retry (google.api_core.retry.Retry): Designation of what errors, + if any, should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + """ + self._method = method + self._request = ( + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest( + request + ) + ) + self._response = response + self._retry = retry + self._timeout = timeout + self._metadata = metadata + + def __getattr__(self, name: str) -> Any: + return getattr(self._response, name) + + @property + def pages( + self, + ) -> Iterator[ + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse + ]: + yield self._response + while self._response.next_page_token: + self._request.page_token = self._response.next_page_token + self._response = self._method( + self._request, + retry=self._retry, + timeout=self._timeout, + metadata=self._metadata, + ) + yield self._response + + def __iter__( + self, + ) -> Iterator[goldengate_connection_assignment.GoldengateConnectionAssignment]: + for page in self.pages: + yield from page.goldengate_connection_assignments + + def __repr__(self) -> str: + return "{0}<{1!r}>".format(self.__class__.__name__, self._response) + + +class ListGoldengateConnectionAssignmentsAsyncPager: + """A pager for iterating through ``list_goldengate_connection_assignments`` requests. + + This class thinly wraps an initial + :class:`google.cloud.oracledatabase_v1.types.ListGoldengateConnectionAssignmentsResponse` object, and + provides an ``__aiter__`` method to iterate through its + ``goldengate_connection_assignments`` field. + + If there are more pages, the ``__aiter__`` method will make additional + ``ListGoldengateConnectionAssignments`` requests and continue to iterate + through the ``goldengate_connection_assignments`` field on the + corresponding responses. + + All the usual :class:`google.cloud.oracledatabase_v1.types.ListGoldengateConnectionAssignmentsResponse` + attributes are available on the pager. If multiple requests are made, only + the most recent response is retained, and thus used for attribute lookup. + """ + + def __init__( + self, + method: Callable[ + ..., + Awaitable[ + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse + ], + ], + request: goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest, + response: goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse, + *, + retry: OptionalAsyncRetry = gapic_v1.method.DEFAULT, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ): + """Instantiates the pager. + + Args: + method (Callable): The method that was originally called, and + which instantiated this pager. + request (google.cloud.oracledatabase_v1.types.ListGoldengateConnectionAssignmentsRequest): + The initial request object. + response (google.cloud.oracledatabase_v1.types.ListGoldengateConnectionAssignmentsResponse): + The initial response object. + retry (google.api_core.retry.AsyncRetry): Designation of what errors, + if any, should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + """ + self._method = method + self._request = ( + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest( + request + ) + ) + self._response = response + self._retry = retry + self._timeout = timeout + self._metadata = metadata + + def __getattr__(self, name: str) -> Any: + return getattr(self._response, name) + + @property + async def pages( + self, + ) -> AsyncIterator[ + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse + ]: + yield self._response + while self._response.next_page_token: + self._request.page_token = self._response.next_page_token + self._response = await self._method( + self._request, + retry=self._retry, + timeout=self._timeout, + metadata=self._metadata, + ) + yield self._response + + def __aiter__( + self, + ) -> AsyncIterator[goldengate_connection_assignment.GoldengateConnectionAssignment]: + async def async_generator(): + async for page in self.pages: + for response in page.goldengate_connection_assignments: + yield response + + return async_generator() + + def __repr__(self) -> str: + return "{0}<{1!r}>".format(self.__class__.__name__, self._response) diff --git a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/transports/base.py b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/transports/base.py index c4cedff908e5..db62bd8f855e 100644 --- a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/transports/base.py +++ b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/transports/base.py @@ -38,6 +38,13 @@ exadata_infra, exadb_vm_cluster, exascale_db_storage_vault, + goldengate_connection, + goldengate_connection_assignment, + goldengate_connection_type, + goldengate_deployment, + goldengate_deployment_environment, + goldengate_deployment_type, + goldengate_deployment_version, minor_version, odb_network, odb_subnet, @@ -49,6 +56,15 @@ from google.cloud.oracledatabase_v1.types import ( exascale_db_storage_vault as gco_exascale_db_storage_vault, ) +from google.cloud.oracledatabase_v1.types import ( + goldengate_connection as gco_goldengate_connection, +) +from google.cloud.oracledatabase_v1.types import ( + goldengate_connection_assignment as gco_goldengate_connection_assignment, +) +from google.cloud.oracledatabase_v1.types import ( + goldengate_deployment as gco_goldengate_deployment, +) from google.cloud.oracledatabase_v1.types import odb_network as gco_odb_network from google.cloud.oracledatabase_v1.types import odb_subnet as gco_odb_subnet @@ -746,6 +762,176 @@ def _prep_wrapped_messages(self, client_info): default_timeout=None, client_info=client_info, ), + self.list_goldengate_deployments: gapic_v1.method.wrap_method( + self.list_goldengate_deployments, + default_retry=retries.Retry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.get_goldengate_deployment: gapic_v1.method.wrap_method( + self.get_goldengate_deployment, + default_retry=retries.Retry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.create_goldengate_deployment: gapic_v1.method.wrap_method( + self.create_goldengate_deployment, + default_timeout=None, + client_info=client_info, + ), + self.delete_goldengate_deployment: gapic_v1.method.wrap_method( + self.delete_goldengate_deployment, + default_timeout=None, + client_info=client_info, + ), + self.stop_goldengate_deployment: gapic_v1.method.wrap_method( + self.stop_goldengate_deployment, + default_timeout=None, + client_info=client_info, + ), + self.start_goldengate_deployment: gapic_v1.method.wrap_method( + self.start_goldengate_deployment, + default_timeout=None, + client_info=client_info, + ), + self.list_goldengate_connections: gapic_v1.method.wrap_method( + self.list_goldengate_connections, + default_retry=retries.Retry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.get_goldengate_connection: gapic_v1.method.wrap_method( + self.get_goldengate_connection, + default_retry=retries.Retry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.create_goldengate_connection: gapic_v1.method.wrap_method( + self.create_goldengate_connection, + default_timeout=None, + client_info=client_info, + ), + self.delete_goldengate_connection: gapic_v1.method.wrap_method( + self.delete_goldengate_connection, + default_timeout=None, + client_info=client_info, + ), + self.get_goldengate_deployment_version: gapic_v1.method.wrap_method( + self.get_goldengate_deployment_version, + default_timeout=None, + client_info=client_info, + ), + self.list_goldengate_deployment_versions: gapic_v1.method.wrap_method( + self.list_goldengate_deployment_versions, + default_retry=retries.Retry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.get_goldengate_deployment_type: gapic_v1.method.wrap_method( + self.get_goldengate_deployment_type, + default_timeout=None, + client_info=client_info, + ), + self.list_goldengate_deployment_types: gapic_v1.method.wrap_method( + self.list_goldengate_deployment_types, + default_retry=retries.Retry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.get_goldengate_deployment_environment: gapic_v1.method.wrap_method( + self.get_goldengate_deployment_environment, + default_timeout=None, + client_info=client_info, + ), + self.list_goldengate_deployment_environments: gapic_v1.method.wrap_method( + self.list_goldengate_deployment_environments, + default_retry=retries.Retry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.get_goldengate_connection_type: gapic_v1.method.wrap_method( + self.get_goldengate_connection_type, + default_timeout=None, + client_info=client_info, + ), + self.list_goldengate_connection_types: gapic_v1.method.wrap_method( + self.list_goldengate_connection_types, + default_retry=retries.Retry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), self.list_db_versions: gapic_v1.method.wrap_method( self.list_db_versions, default_retry=retries.Retry( @@ -776,6 +962,51 @@ def _prep_wrapped_messages(self, client_info): default_timeout=60.0, client_info=client_info, ), + self.list_goldengate_connection_assignments: gapic_v1.method.wrap_method( + self.list_goldengate_connection_assignments, + default_retry=retries.Retry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.get_goldengate_connection_assignment: gapic_v1.method.wrap_method( + self.get_goldengate_connection_assignment, + default_retry=retries.Retry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.create_goldengate_connection_assignment: gapic_v1.method.wrap_method( + self.create_goldengate_connection_assignment, + default_timeout=None, + client_info=client_info, + ), + self.delete_goldengate_connection_assignment: gapic_v1.method.wrap_method( + self.delete_goldengate_connection_assignment, + default_timeout=None, + client_info=client_info, + ), + self.test_goldengate_connection_assignment: gapic_v1.method.wrap_method( + self.test_goldengate_connection_assignment, + default_timeout=None, + client_info=client_info, + ), self.get_location: gapic_v1.method.wrap_method( self.get_location, default_timeout=None, @@ -1403,6 +1634,210 @@ def delete_db_system( ]: raise NotImplementedError() + @property + def list_goldengate_deployments( + self, + ) -> Callable[ + [goldengate_deployment.ListGoldengateDeploymentsRequest], + Union[ + goldengate_deployment.ListGoldengateDeploymentsResponse, + Awaitable[goldengate_deployment.ListGoldengateDeploymentsResponse], + ], + ]: + raise NotImplementedError() + + @property + def get_goldengate_deployment( + self, + ) -> Callable[ + [goldengate_deployment.GetGoldengateDeploymentRequest], + Union[ + goldengate_deployment.GoldengateDeployment, + Awaitable[goldengate_deployment.GoldengateDeployment], + ], + ]: + raise NotImplementedError() + + @property + def create_goldengate_deployment( + self, + ) -> Callable[ + [gco_goldengate_deployment.CreateGoldengateDeploymentRequest], + Union[operations_pb2.Operation, Awaitable[operations_pb2.Operation]], + ]: + raise NotImplementedError() + + @property + def delete_goldengate_deployment( + self, + ) -> Callable[ + [goldengate_deployment.DeleteGoldengateDeploymentRequest], + Union[operations_pb2.Operation, Awaitable[operations_pb2.Operation]], + ]: + raise NotImplementedError() + + @property + def stop_goldengate_deployment( + self, + ) -> Callable[ + [goldengate_deployment.StopGoldengateDeploymentRequest], + Union[operations_pb2.Operation, Awaitable[operations_pb2.Operation]], + ]: + raise NotImplementedError() + + @property + def start_goldengate_deployment( + self, + ) -> Callable[ + [goldengate_deployment.StartGoldengateDeploymentRequest], + Union[operations_pb2.Operation, Awaitable[operations_pb2.Operation]], + ]: + raise NotImplementedError() + + @property + def list_goldengate_connections( + self, + ) -> Callable[ + [goldengate_connection.ListGoldengateConnectionsRequest], + Union[ + goldengate_connection.ListGoldengateConnectionsResponse, + Awaitable[goldengate_connection.ListGoldengateConnectionsResponse], + ], + ]: + raise NotImplementedError() + + @property + def get_goldengate_connection( + self, + ) -> Callable[ + [goldengate_connection.GetGoldengateConnectionRequest], + Union[ + goldengate_connection.GoldengateConnection, + Awaitable[goldengate_connection.GoldengateConnection], + ], + ]: + raise NotImplementedError() + + @property + def create_goldengate_connection( + self, + ) -> Callable[ + [gco_goldengate_connection.CreateGoldengateConnectionRequest], + Union[operations_pb2.Operation, Awaitable[operations_pb2.Operation]], + ]: + raise NotImplementedError() + + @property + def delete_goldengate_connection( + self, + ) -> Callable[ + [goldengate_connection.DeleteGoldengateConnectionRequest], + Union[operations_pb2.Operation, Awaitable[operations_pb2.Operation]], + ]: + raise NotImplementedError() + + @property + def get_goldengate_deployment_version( + self, + ) -> Callable[ + [goldengate_deployment_version.GetGoldengateDeploymentVersionRequest], + Union[ + goldengate_deployment_version.GoldengateDeploymentVersion, + Awaitable[goldengate_deployment_version.GoldengateDeploymentVersion], + ], + ]: + raise NotImplementedError() + + @property + def list_goldengate_deployment_versions( + self, + ) -> Callable[ + [goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest], + Union[ + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse, + Awaitable[ + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse + ], + ], + ]: + raise NotImplementedError() + + @property + def get_goldengate_deployment_type( + self, + ) -> Callable[ + [goldengate_deployment_type.GetGoldengateDeploymentTypeRequest], + Union[ + goldengate_deployment_type.GoldengateDeploymentType, + Awaitable[goldengate_deployment_type.GoldengateDeploymentType], + ], + ]: + raise NotImplementedError() + + @property + def list_goldengate_deployment_types( + self, + ) -> Callable[ + [goldengate_deployment_type.ListGoldengateDeploymentTypesRequest], + Union[ + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse, + Awaitable[goldengate_deployment_type.ListGoldengateDeploymentTypesResponse], + ], + ]: + raise NotImplementedError() + + @property + def get_goldengate_deployment_environment( + self, + ) -> Callable[ + [goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest], + Union[ + goldengate_deployment_environment.GoldengateDeploymentEnvironment, + Awaitable[ + goldengate_deployment_environment.GoldengateDeploymentEnvironment + ], + ], + ]: + raise NotImplementedError() + + @property + def list_goldengate_deployment_environments( + self, + ) -> Callable[ + [goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest], + Union[ + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse, + Awaitable[ + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse + ], + ], + ]: + raise NotImplementedError() + + @property + def get_goldengate_connection_type( + self, + ) -> Callable[ + [goldengate_connection_type.GetGoldengateConnectionTypeRequest], + Union[ + goldengate_connection_type.GoldengateConnectionType, + Awaitable[goldengate_connection_type.GoldengateConnectionType], + ], + ]: + raise NotImplementedError() + + @property + def list_goldengate_connection_types( + self, + ) -> Callable[ + [goldengate_connection_type.ListGoldengateConnectionTypesRequest], + Union[ + goldengate_connection_type.ListGoldengateConnectionTypesResponse, + Awaitable[goldengate_connection_type.ListGoldengateConnectionTypesResponse], + ], + ]: + raise NotImplementedError() + @property def list_db_versions( self, @@ -1427,6 +1862,66 @@ def list_database_character_sets( ]: raise NotImplementedError() + @property + def list_goldengate_connection_assignments( + self, + ) -> Callable[ + [goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest], + Union[ + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse, + Awaitable[ + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse + ], + ], + ]: + raise NotImplementedError() + + @property + def get_goldengate_connection_assignment( + self, + ) -> Callable[ + [goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest], + Union[ + goldengate_connection_assignment.GoldengateConnectionAssignment, + Awaitable[goldengate_connection_assignment.GoldengateConnectionAssignment], + ], + ]: + raise NotImplementedError() + + @property + def create_goldengate_connection_assignment( + self, + ) -> Callable[ + [ + gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest + ], + Union[operations_pb2.Operation, Awaitable[operations_pb2.Operation]], + ]: + raise NotImplementedError() + + @property + def delete_goldengate_connection_assignment( + self, + ) -> Callable[ + [goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest], + Union[operations_pb2.Operation, Awaitable[operations_pb2.Operation]], + ]: + raise NotImplementedError() + + @property + def test_goldengate_connection_assignment( + self, + ) -> Callable[ + [goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest], + Union[ + goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse, + Awaitable[ + goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse + ], + ], + ]: + raise NotImplementedError() + @property def list_operations( self, diff --git a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/transports/grpc.py b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/transports/grpc.py index 1186dcdd8e89..2432898a7eb2 100644 --- a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/transports/grpc.py +++ b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/transports/grpc.py @@ -40,6 +40,13 @@ exadata_infra, exadb_vm_cluster, exascale_db_storage_vault, + goldengate_connection, + goldengate_connection_assignment, + goldengate_connection_type, + goldengate_deployment, + goldengate_deployment_environment, + goldengate_deployment_type, + goldengate_deployment_version, minor_version, odb_network, odb_subnet, @@ -51,6 +58,15 @@ from google.cloud.oracledatabase_v1.types import ( exascale_db_storage_vault as gco_exascale_db_storage_vault, ) +from google.cloud.oracledatabase_v1.types import ( + goldengate_connection as gco_goldengate_connection, +) +from google.cloud.oracledatabase_v1.types import ( + goldengate_connection_assignment as gco_goldengate_connection_assignment, +) +from google.cloud.oracledatabase_v1.types import ( + goldengate_deployment as gco_goldengate_deployment, +) from google.cloud.oracledatabase_v1.types import odb_network as gco_odb_network from google.cloud.oracledatabase_v1.types import odb_subnet as gco_odb_subnet @@ -2013,6 +2029,575 @@ def delete_db_system( ) return self._stubs["delete_db_system"] + @property + def list_goldengate_deployments( + self, + ) -> Callable[ + [goldengate_deployment.ListGoldengateDeploymentsRequest], + goldengate_deployment.ListGoldengateDeploymentsResponse, + ]: + r"""Return a callable for the list goldengate deployments method over gRPC. + + Lists all the GoldengateDeployments for the given + project and location. + + Returns: + Callable[[~.ListGoldengateDeploymentsRequest], + ~.ListGoldengateDeploymentsResponse]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "list_goldengate_deployments" not in self._stubs: + self._stubs["list_goldengate_deployments"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/ListGoldengateDeployments", + request_serializer=goldengate_deployment.ListGoldengateDeploymentsRequest.serialize, + response_deserializer=goldengate_deployment.ListGoldengateDeploymentsResponse.deserialize, + ) + ) + return self._stubs["list_goldengate_deployments"] + + @property + def get_goldengate_deployment( + self, + ) -> Callable[ + [goldengate_deployment.GetGoldengateDeploymentRequest], + goldengate_deployment.GoldengateDeployment, + ]: + r"""Return a callable for the get goldengate deployment method over gRPC. + + Gets details of a single GoldengateDeployment. + + Returns: + Callable[[~.GetGoldengateDeploymentRequest], + ~.GoldengateDeployment]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "get_goldengate_deployment" not in self._stubs: + self._stubs["get_goldengate_deployment"] = self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/GetGoldengateDeployment", + request_serializer=goldengate_deployment.GetGoldengateDeploymentRequest.serialize, + response_deserializer=goldengate_deployment.GoldengateDeployment.deserialize, + ) + return self._stubs["get_goldengate_deployment"] + + @property + def create_goldengate_deployment( + self, + ) -> Callable[ + [gco_goldengate_deployment.CreateGoldengateDeploymentRequest], + operations_pb2.Operation, + ]: + r"""Return a callable for the create goldengate deployment method over gRPC. + + Creates a new GoldengateDeployment in a given project + and location. + + Returns: + Callable[[~.CreateGoldengateDeploymentRequest], + ~.Operation]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "create_goldengate_deployment" not in self._stubs: + self._stubs["create_goldengate_deployment"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/CreateGoldengateDeployment", + request_serializer=gco_goldengate_deployment.CreateGoldengateDeploymentRequest.serialize, + response_deserializer=operations_pb2.Operation.FromString, + ) + ) + return self._stubs["create_goldengate_deployment"] + + @property + def delete_goldengate_deployment( + self, + ) -> Callable[ + [goldengate_deployment.DeleteGoldengateDeploymentRequest], + operations_pb2.Operation, + ]: + r"""Return a callable for the delete goldengate deployment method over gRPC. + + Deletes a single GoldengateDeployment. + + Returns: + Callable[[~.DeleteGoldengateDeploymentRequest], + ~.Operation]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "delete_goldengate_deployment" not in self._stubs: + self._stubs["delete_goldengate_deployment"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/DeleteGoldengateDeployment", + request_serializer=goldengate_deployment.DeleteGoldengateDeploymentRequest.serialize, + response_deserializer=operations_pb2.Operation.FromString, + ) + ) + return self._stubs["delete_goldengate_deployment"] + + @property + def stop_goldengate_deployment( + self, + ) -> Callable[ + [goldengate_deployment.StopGoldengateDeploymentRequest], + operations_pb2.Operation, + ]: + r"""Return a callable for the stop goldengate deployment method over gRPC. + + Stops a single GoldengateDeployment. + + Returns: + Callable[[~.StopGoldengateDeploymentRequest], + ~.Operation]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "stop_goldengate_deployment" not in self._stubs: + self._stubs["stop_goldengate_deployment"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/StopGoldengateDeployment", + request_serializer=goldengate_deployment.StopGoldengateDeploymentRequest.serialize, + response_deserializer=operations_pb2.Operation.FromString, + ) + ) + return self._stubs["stop_goldengate_deployment"] + + @property + def start_goldengate_deployment( + self, + ) -> Callable[ + [goldengate_deployment.StartGoldengateDeploymentRequest], + operations_pb2.Operation, + ]: + r"""Return a callable for the start goldengate deployment method over gRPC. + + Starts a single GoldengateDeployment. + + Returns: + Callable[[~.StartGoldengateDeploymentRequest], + ~.Operation]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "start_goldengate_deployment" not in self._stubs: + self._stubs["start_goldengate_deployment"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/StartGoldengateDeployment", + request_serializer=goldengate_deployment.StartGoldengateDeploymentRequest.serialize, + response_deserializer=operations_pb2.Operation.FromString, + ) + ) + return self._stubs["start_goldengate_deployment"] + + @property + def list_goldengate_connections( + self, + ) -> Callable[ + [goldengate_connection.ListGoldengateConnectionsRequest], + goldengate_connection.ListGoldengateConnectionsResponse, + ]: + r"""Return a callable for the list goldengate connections method over gRPC. + + Lists all the GoldengateConnections for the given + project and location. + + Returns: + Callable[[~.ListGoldengateConnectionsRequest], + ~.ListGoldengateConnectionsResponse]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "list_goldengate_connections" not in self._stubs: + self._stubs["list_goldengate_connections"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/ListGoldengateConnections", + request_serializer=goldengate_connection.ListGoldengateConnectionsRequest.serialize, + response_deserializer=goldengate_connection.ListGoldengateConnectionsResponse.deserialize, + ) + ) + return self._stubs["list_goldengate_connections"] + + @property + def get_goldengate_connection( + self, + ) -> Callable[ + [goldengate_connection.GetGoldengateConnectionRequest], + goldengate_connection.GoldengateConnection, + ]: + r"""Return a callable for the get goldengate connection method over gRPC. + + Gets details of a single GoldengateConnection. + + Returns: + Callable[[~.GetGoldengateConnectionRequest], + ~.GoldengateConnection]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "get_goldengate_connection" not in self._stubs: + self._stubs["get_goldengate_connection"] = self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/GetGoldengateConnection", + request_serializer=goldengate_connection.GetGoldengateConnectionRequest.serialize, + response_deserializer=goldengate_connection.GoldengateConnection.deserialize, + ) + return self._stubs["get_goldengate_connection"] + + @property + def create_goldengate_connection( + self, + ) -> Callable[ + [gco_goldengate_connection.CreateGoldengateConnectionRequest], + operations_pb2.Operation, + ]: + r"""Return a callable for the create goldengate connection method over gRPC. + + Creates a new GoldengateConnection in a given project + and location. + + Returns: + Callable[[~.CreateGoldengateConnectionRequest], + ~.Operation]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "create_goldengate_connection" not in self._stubs: + self._stubs["create_goldengate_connection"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/CreateGoldengateConnection", + request_serializer=gco_goldengate_connection.CreateGoldengateConnectionRequest.serialize, + response_deserializer=operations_pb2.Operation.FromString, + ) + ) + return self._stubs["create_goldengate_connection"] + + @property + def delete_goldengate_connection( + self, + ) -> Callable[ + [goldengate_connection.DeleteGoldengateConnectionRequest], + operations_pb2.Operation, + ]: + r"""Return a callable for the delete goldengate connection method over gRPC. + + Deletes a single GoldengateConnection. + + Returns: + Callable[[~.DeleteGoldengateConnectionRequest], + ~.Operation]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "delete_goldengate_connection" not in self._stubs: + self._stubs["delete_goldengate_connection"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/DeleteGoldengateConnection", + request_serializer=goldengate_connection.DeleteGoldengateConnectionRequest.serialize, + response_deserializer=operations_pb2.Operation.FromString, + ) + ) + return self._stubs["delete_goldengate_connection"] + + @property + def get_goldengate_deployment_version( + self, + ) -> Callable[ + [goldengate_deployment_version.GetGoldengateDeploymentVersionRequest], + goldengate_deployment_version.GoldengateDeploymentVersion, + ]: + r"""Return a callable for the get goldengate deployment + version method over gRPC. + + Gets details of a single GoldengateDeploymentVersion. + + Returns: + Callable[[~.GetGoldengateDeploymentVersionRequest], + ~.GoldengateDeploymentVersion]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "get_goldengate_deployment_version" not in self._stubs: + self._stubs["get_goldengate_deployment_version"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/GetGoldengateDeploymentVersion", + request_serializer=goldengate_deployment_version.GetGoldengateDeploymentVersionRequest.serialize, + response_deserializer=goldengate_deployment_version.GoldengateDeploymentVersion.deserialize, + ) + ) + return self._stubs["get_goldengate_deployment_version"] + + @property + def list_goldengate_deployment_versions( + self, + ) -> Callable[ + [goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest], + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse, + ]: + r"""Return a callable for the list goldengate deployment + versions method over gRPC. + + Lists GoldengateDeploymentVersions in a given project + and location. + + Returns: + Callable[[~.ListGoldengateDeploymentVersionsRequest], + ~.ListGoldengateDeploymentVersionsResponse]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "list_goldengate_deployment_versions" not in self._stubs: + self._stubs["list_goldengate_deployment_versions"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/ListGoldengateDeploymentVersions", + request_serializer=goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest.serialize, + response_deserializer=goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse.deserialize, + ) + ) + return self._stubs["list_goldengate_deployment_versions"] + + @property + def get_goldengate_deployment_type( + self, + ) -> Callable[ + [goldengate_deployment_type.GetGoldengateDeploymentTypeRequest], + goldengate_deployment_type.GoldengateDeploymentType, + ]: + r"""Return a callable for the get goldengate deployment type method over gRPC. + + Gets details of a single GoldenGateDeploymentType. + + Returns: + Callable[[~.GetGoldengateDeploymentTypeRequest], + ~.GoldengateDeploymentType]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "get_goldengate_deployment_type" not in self._stubs: + self._stubs["get_goldengate_deployment_type"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/GetGoldengateDeploymentType", + request_serializer=goldengate_deployment_type.GetGoldengateDeploymentTypeRequest.serialize, + response_deserializer=goldengate_deployment_type.GoldengateDeploymentType.deserialize, + ) + ) + return self._stubs["get_goldengate_deployment_type"] + + @property + def list_goldengate_deployment_types( + self, + ) -> Callable[ + [goldengate_deployment_type.ListGoldengateDeploymentTypesRequest], + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse, + ]: + r"""Return a callable for the list goldengate deployment + types method over gRPC. + + Lists GoldenGateDeploymentTypes in a given project + and location. + + Returns: + Callable[[~.ListGoldengateDeploymentTypesRequest], + ~.ListGoldengateDeploymentTypesResponse]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "list_goldengate_deployment_types" not in self._stubs: + self._stubs["list_goldengate_deployment_types"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/ListGoldengateDeploymentTypes", + request_serializer=goldengate_deployment_type.ListGoldengateDeploymentTypesRequest.serialize, + response_deserializer=goldengate_deployment_type.ListGoldengateDeploymentTypesResponse.deserialize, + ) + ) + return self._stubs["list_goldengate_deployment_types"] + + @property + def get_goldengate_deployment_environment( + self, + ) -> Callable[ + [goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest], + goldengate_deployment_environment.GoldengateDeploymentEnvironment, + ]: + r"""Return a callable for the get goldengate deployment + environment method over gRPC. + + Gets details of a single + GoldengateDeploymentEnvironment. + + Returns: + Callable[[~.GetGoldengateDeploymentEnvironmentRequest], + ~.GoldengateDeploymentEnvironment]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "get_goldengate_deployment_environment" not in self._stubs: + self._stubs["get_goldengate_deployment_environment"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/GetGoldengateDeploymentEnvironment", + request_serializer=goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest.serialize, + response_deserializer=goldengate_deployment_environment.GoldengateDeploymentEnvironment.deserialize, + ) + ) + return self._stubs["get_goldengate_deployment_environment"] + + @property + def list_goldengate_deployment_environments( + self, + ) -> Callable[ + [goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest], + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse, + ]: + r"""Return a callable for the list goldengate deployment + environments method over gRPC. + + Lists GoldengateDeploymentEnvironments in a given + project and location. + + Returns: + Callable[[~.ListGoldengateDeploymentEnvironmentsRequest], + ~.ListGoldengateDeploymentEnvironmentsResponse]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "list_goldengate_deployment_environments" not in self._stubs: + self._stubs["list_goldengate_deployment_environments"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/ListGoldengateDeploymentEnvironments", + request_serializer=goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest.serialize, + response_deserializer=goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse.deserialize, + ) + ) + return self._stubs["list_goldengate_deployment_environments"] + + @property + def get_goldengate_connection_type( + self, + ) -> Callable[ + [goldengate_connection_type.GetGoldengateConnectionTypeRequest], + goldengate_connection_type.GoldengateConnectionType, + ]: + r"""Return a callable for the get goldengate connection type method over gRPC. + + Gets details of a single GoldengateConnectionType. + + Returns: + Callable[[~.GetGoldengateConnectionTypeRequest], + ~.GoldengateConnectionType]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "get_goldengate_connection_type" not in self._stubs: + self._stubs["get_goldengate_connection_type"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/GetGoldengateConnectionType", + request_serializer=goldengate_connection_type.GetGoldengateConnectionTypeRequest.serialize, + response_deserializer=goldengate_connection_type.GoldengateConnectionType.deserialize, + ) + ) + return self._stubs["get_goldengate_connection_type"] + + @property + def list_goldengate_connection_types( + self, + ) -> Callable[ + [goldengate_connection_type.ListGoldengateConnectionTypesRequest], + goldengate_connection_type.ListGoldengateConnectionTypesResponse, + ]: + r"""Return a callable for the list goldengate connection + types method over gRPC. + + Lists GoldengateConnectionTypes in a given project + and location. + + Returns: + Callable[[~.ListGoldengateConnectionTypesRequest], + ~.ListGoldengateConnectionTypesResponse]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "list_goldengate_connection_types" not in self._stubs: + self._stubs["list_goldengate_connection_types"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/ListGoldengateConnectionTypes", + request_serializer=goldengate_connection_type.ListGoldengateConnectionTypesRequest.serialize, + response_deserializer=goldengate_connection_type.ListGoldengateConnectionTypesResponse.deserialize, + ) + ) + return self._stubs["list_goldengate_connection_types"] + @property def list_db_versions( self, @@ -2073,6 +2658,171 @@ def list_database_character_sets( ) return self._stubs["list_database_character_sets"] + @property + def list_goldengate_connection_assignments( + self, + ) -> Callable[ + [goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest], + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse, + ]: + r"""Return a callable for the list goldengate connection + assignments method over gRPC. + + Lists GoldengateConnectionAssignments in a given + project and location. + + Returns: + Callable[[~.ListGoldengateConnectionAssignmentsRequest], + ~.ListGoldengateConnectionAssignmentsResponse]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "list_goldengate_connection_assignments" not in self._stubs: + self._stubs["list_goldengate_connection_assignments"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/ListGoldengateConnectionAssignments", + request_serializer=goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest.serialize, + response_deserializer=goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse.deserialize, + ) + ) + return self._stubs["list_goldengate_connection_assignments"] + + @property + def get_goldengate_connection_assignment( + self, + ) -> Callable[ + [goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest], + goldengate_connection_assignment.GoldengateConnectionAssignment, + ]: + r"""Return a callable for the get goldengate connection + assignment method over gRPC. + + Gets details of a single + GoldengateConnectionAssignment. + + Returns: + Callable[[~.GetGoldengateConnectionAssignmentRequest], + ~.GoldengateConnectionAssignment]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "get_goldengate_connection_assignment" not in self._stubs: + self._stubs["get_goldengate_connection_assignment"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/GetGoldengateConnectionAssignment", + request_serializer=goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest.serialize, + response_deserializer=goldengate_connection_assignment.GoldengateConnectionAssignment.deserialize, + ) + ) + return self._stubs["get_goldengate_connection_assignment"] + + @property + def create_goldengate_connection_assignment( + self, + ) -> Callable[ + [ + gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest + ], + operations_pb2.Operation, + ]: + r"""Return a callable for the create goldengate connection + assignment method over gRPC. + + Creates a new GoldengateConnectionAssignment in a + given project and location. + + Returns: + Callable[[~.CreateGoldengateConnectionAssignmentRequest], + ~.Operation]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "create_goldengate_connection_assignment" not in self._stubs: + self._stubs["create_goldengate_connection_assignment"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/CreateGoldengateConnectionAssignment", + request_serializer=gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest.serialize, + response_deserializer=operations_pb2.Operation.FromString, + ) + ) + return self._stubs["create_goldengate_connection_assignment"] + + @property + def delete_goldengate_connection_assignment( + self, + ) -> Callable[ + [goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest], + operations_pb2.Operation, + ]: + r"""Return a callable for the delete goldengate connection + assignment method over gRPC. + + Deletes a single GoldengateConnectionAssignment. + + Returns: + Callable[[~.DeleteGoldengateConnectionAssignmentRequest], + ~.Operation]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "delete_goldengate_connection_assignment" not in self._stubs: + self._stubs["delete_goldengate_connection_assignment"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/DeleteGoldengateConnectionAssignment", + request_serializer=goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest.serialize, + response_deserializer=operations_pb2.Operation.FromString, + ) + ) + return self._stubs["delete_goldengate_connection_assignment"] + + @property + def test_goldengate_connection_assignment( + self, + ) -> Callable[ + [goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest], + goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse, + ]: + r"""Return a callable for the test goldengate connection + assignment method over gRPC. + + Tests a single GoldengateConnectionAssignment. + + Returns: + Callable[[~.TestGoldengateConnectionAssignmentRequest], + ~.TestGoldengateConnectionAssignmentResponse]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "test_goldengate_connection_assignment" not in self._stubs: + self._stubs["test_goldengate_connection_assignment"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/TestGoldengateConnectionAssignment", + request_serializer=goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest.serialize, + response_deserializer=goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse.deserialize, + ) + ) + return self._stubs["test_goldengate_connection_assignment"] + def close(self): self._logged_channel.close() diff --git a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/transports/grpc_asyncio.py b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/transports/grpc_asyncio.py index c035b1aece4e..7c8aa556ea65 100644 --- a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/transports/grpc_asyncio.py +++ b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/transports/grpc_asyncio.py @@ -43,6 +43,13 @@ exadata_infra, exadb_vm_cluster, exascale_db_storage_vault, + goldengate_connection, + goldengate_connection_assignment, + goldengate_connection_type, + goldengate_deployment, + goldengate_deployment_environment, + goldengate_deployment_type, + goldengate_deployment_version, minor_version, odb_network, odb_subnet, @@ -54,6 +61,15 @@ from google.cloud.oracledatabase_v1.types import ( exascale_db_storage_vault as gco_exascale_db_storage_vault, ) +from google.cloud.oracledatabase_v1.types import ( + goldengate_connection as gco_goldengate_connection, +) +from google.cloud.oracledatabase_v1.types import ( + goldengate_connection_assignment as gco_goldengate_connection_assignment, +) +from google.cloud.oracledatabase_v1.types import ( + goldengate_deployment as gco_goldengate_deployment, +) from google.cloud.oracledatabase_v1.types import odb_network as gco_odb_network from google.cloud.oracledatabase_v1.types import odb_subnet as gco_odb_subnet @@ -2063,18 +2079,20 @@ def delete_db_system( return self._stubs["delete_db_system"] @property - def list_db_versions( + def list_goldengate_deployments( self, ) -> Callable[ - [db_version.ListDbVersionsRequest], Awaitable[db_version.ListDbVersionsResponse] + [goldengate_deployment.ListGoldengateDeploymentsRequest], + Awaitable[goldengate_deployment.ListGoldengateDeploymentsResponse], ]: - r"""Return a callable for the list db versions method over gRPC. + r"""Return a callable for the list goldengate deployments method over gRPC. - List DbVersions for the given project and location. + Lists all the GoldengateDeployments for the given + project and location. Returns: - Callable[[~.ListDbVersionsRequest], - Awaitable[~.ListDbVersionsResponse]]: + Callable[[~.ListGoldengateDeploymentsRequest], + Awaitable[~.ListGoldengateDeploymentsResponse]]: A function that, when called, will call the underlying RPC on the server. """ @@ -2082,29 +2100,30 @@ def list_db_versions( # the request. # gRPC handles serialization and deserialization, so we just need # to pass in the functions for each. - if "list_db_versions" not in self._stubs: - self._stubs["list_db_versions"] = self._logged_channel.unary_unary( - "/google.cloud.oracledatabase.v1.OracleDatabase/ListDbVersions", - request_serializer=db_version.ListDbVersionsRequest.serialize, - response_deserializer=db_version.ListDbVersionsResponse.deserialize, + if "list_goldengate_deployments" not in self._stubs: + self._stubs["list_goldengate_deployments"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/ListGoldengateDeployments", + request_serializer=goldengate_deployment.ListGoldengateDeploymentsRequest.serialize, + response_deserializer=goldengate_deployment.ListGoldengateDeploymentsResponse.deserialize, + ) ) - return self._stubs["list_db_versions"] + return self._stubs["list_goldengate_deployments"] @property - def list_database_character_sets( + def get_goldengate_deployment( self, ) -> Callable[ - [database_character_set.ListDatabaseCharacterSetsRequest], - Awaitable[database_character_set.ListDatabaseCharacterSetsResponse], + [goldengate_deployment.GetGoldengateDeploymentRequest], + Awaitable[goldengate_deployment.GoldengateDeployment], ]: - r"""Return a callable for the list database character sets method over gRPC. + r"""Return a callable for the get goldengate deployment method over gRPC. - List DatabaseCharacterSets for the given project and - location. + Gets details of a single GoldengateDeployment. Returns: - Callable[[~.ListDatabaseCharacterSetsRequest], - Awaitable[~.ListDatabaseCharacterSetsResponse]]: + Callable[[~.GetGoldengateDeploymentRequest], + Awaitable[~.GoldengateDeployment]]: A function that, when called, will call the underlying RPC on the server. """ @@ -2112,217 +2131,956 @@ def list_database_character_sets( # the request. # gRPC handles serialization and deserialization, so we just need # to pass in the functions for each. - if "list_database_character_sets" not in self._stubs: - self._stubs["list_database_character_sets"] = ( + if "get_goldengate_deployment" not in self._stubs: + self._stubs["get_goldengate_deployment"] = self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/GetGoldengateDeployment", + request_serializer=goldengate_deployment.GetGoldengateDeploymentRequest.serialize, + response_deserializer=goldengate_deployment.GoldengateDeployment.deserialize, + ) + return self._stubs["get_goldengate_deployment"] + + @property + def create_goldengate_deployment( + self, + ) -> Callable[ + [gco_goldengate_deployment.CreateGoldengateDeploymentRequest], + Awaitable[operations_pb2.Operation], + ]: + r"""Return a callable for the create goldengate deployment method over gRPC. + + Creates a new GoldengateDeployment in a given project + and location. + + Returns: + Callable[[~.CreateGoldengateDeploymentRequest], + Awaitable[~.Operation]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "create_goldengate_deployment" not in self._stubs: + self._stubs["create_goldengate_deployment"] = ( self._logged_channel.unary_unary( - "/google.cloud.oracledatabase.v1.OracleDatabase/ListDatabaseCharacterSets", - request_serializer=database_character_set.ListDatabaseCharacterSetsRequest.serialize, - response_deserializer=database_character_set.ListDatabaseCharacterSetsResponse.deserialize, + "/google.cloud.oracledatabase.v1.OracleDatabase/CreateGoldengateDeployment", + request_serializer=gco_goldengate_deployment.CreateGoldengateDeploymentRequest.serialize, + response_deserializer=operations_pb2.Operation.FromString, ) ) - return self._stubs["list_database_character_sets"] + return self._stubs["create_goldengate_deployment"] - def _prep_wrapped_messages(self, client_info): - """Precompute the wrapped methods, overriding the base class method to use async wrappers.""" - self._wrapped_methods = { - self.list_cloud_exadata_infrastructures: self._wrap_method( - self.list_cloud_exadata_infrastructures, - default_retry=retries.AsyncRetry( - initial=1.0, - maximum=10.0, - multiplier=1.3, - predicate=retries.if_exception_type( - core_exceptions.DeadlineExceeded, - core_exceptions.ServiceUnavailable, - ), - deadline=60.0, - ), - default_timeout=60.0, - client_info=client_info, - ), - self.get_cloud_exadata_infrastructure: self._wrap_method( - self.get_cloud_exadata_infrastructure, - default_retry=retries.AsyncRetry( - initial=1.0, - maximum=10.0, - multiplier=1.3, - predicate=retries.if_exception_type( - core_exceptions.DeadlineExceeded, - core_exceptions.ServiceUnavailable, - ), - deadline=60.0, - ), - default_timeout=60.0, - client_info=client_info, - ), - self.create_cloud_exadata_infrastructure: self._wrap_method( - self.create_cloud_exadata_infrastructure, - default_timeout=None, - client_info=client_info, - ), - self.delete_cloud_exadata_infrastructure: self._wrap_method( - self.delete_cloud_exadata_infrastructure, - default_timeout=None, - client_info=client_info, - ), - self.list_cloud_vm_clusters: self._wrap_method( - self.list_cloud_vm_clusters, - default_retry=retries.AsyncRetry( - initial=1.0, - maximum=10.0, - multiplier=1.3, - predicate=retries.if_exception_type( - core_exceptions.DeadlineExceeded, - core_exceptions.ServiceUnavailable, - ), - deadline=60.0, - ), - default_timeout=60.0, - client_info=client_info, - ), - self.get_cloud_vm_cluster: self._wrap_method( - self.get_cloud_vm_cluster, - default_retry=retries.AsyncRetry( - initial=1.0, - maximum=10.0, - multiplier=1.3, - predicate=retries.if_exception_type( - core_exceptions.DeadlineExceeded, - core_exceptions.ServiceUnavailable, - ), - deadline=60.0, - ), - default_timeout=60.0, - client_info=client_info, - ), - self.create_cloud_vm_cluster: self._wrap_method( - self.create_cloud_vm_cluster, - default_timeout=None, - client_info=client_info, - ), - self.delete_cloud_vm_cluster: self._wrap_method( - self.delete_cloud_vm_cluster, - default_timeout=None, - client_info=client_info, - ), - self.list_entitlements: self._wrap_method( - self.list_entitlements, - default_retry=retries.AsyncRetry( - initial=1.0, - maximum=10.0, - multiplier=1.3, - predicate=retries.if_exception_type( - core_exceptions.DeadlineExceeded, - core_exceptions.ServiceUnavailable, - ), - deadline=60.0, - ), - default_timeout=60.0, - client_info=client_info, - ), - self.list_db_servers: self._wrap_method( - self.list_db_servers, - default_retry=retries.AsyncRetry( - initial=1.0, - maximum=10.0, - multiplier=1.3, - predicate=retries.if_exception_type( - core_exceptions.DeadlineExceeded, - core_exceptions.ServiceUnavailable, - ), - deadline=60.0, - ), - default_timeout=60.0, - client_info=client_info, - ), - self.list_db_nodes: self._wrap_method( - self.list_db_nodes, - default_retry=retries.AsyncRetry( - initial=1.0, - maximum=10.0, - multiplier=1.3, - predicate=retries.if_exception_type( - core_exceptions.DeadlineExceeded, - core_exceptions.ServiceUnavailable, - ), - deadline=60.0, - ), - default_timeout=60.0, - client_info=client_info, - ), - self.list_gi_versions: self._wrap_method( - self.list_gi_versions, - default_retry=retries.AsyncRetry( - initial=1.0, - maximum=10.0, - multiplier=1.3, - predicate=retries.if_exception_type( - core_exceptions.DeadlineExceeded, - core_exceptions.ServiceUnavailable, - ), - deadline=60.0, - ), - default_timeout=60.0, - client_info=client_info, - ), - self.list_minor_versions: self._wrap_method( - self.list_minor_versions, - default_retry=retries.AsyncRetry( - initial=1.0, - maximum=10.0, - multiplier=1.3, - predicate=retries.if_exception_type( - core_exceptions.DeadlineExceeded, - core_exceptions.ServiceUnavailable, - ), - deadline=60.0, - ), - default_timeout=60.0, - client_info=client_info, - ), - self.list_db_system_shapes: self._wrap_method( - self.list_db_system_shapes, - default_retry=retries.AsyncRetry( - initial=1.0, - maximum=10.0, - multiplier=1.3, - predicate=retries.if_exception_type( - core_exceptions.DeadlineExceeded, - core_exceptions.ServiceUnavailable, - ), - deadline=60.0, - ), - default_timeout=60.0, - client_info=client_info, - ), - self.list_autonomous_databases: self._wrap_method( - self.list_autonomous_databases, - default_retry=retries.AsyncRetry( - initial=1.0, - maximum=10.0, - multiplier=1.3, - predicate=retries.if_exception_type( - core_exceptions.DeadlineExceeded, - core_exceptions.ServiceUnavailable, - ), - deadline=60.0, - ), - default_timeout=60.0, - client_info=client_info, - ), - self.get_autonomous_database: self._wrap_method( - self.get_autonomous_database, - default_retry=retries.AsyncRetry( - initial=1.0, - maximum=10.0, - multiplier=1.3, - predicate=retries.if_exception_type( - core_exceptions.DeadlineExceeded, - core_exceptions.ServiceUnavailable, - ), - deadline=60.0, - ), - default_timeout=60.0, + @property + def delete_goldengate_deployment( + self, + ) -> Callable[ + [goldengate_deployment.DeleteGoldengateDeploymentRequest], + Awaitable[operations_pb2.Operation], + ]: + r"""Return a callable for the delete goldengate deployment method over gRPC. + + Deletes a single GoldengateDeployment. + + Returns: + Callable[[~.DeleteGoldengateDeploymentRequest], + Awaitable[~.Operation]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "delete_goldengate_deployment" not in self._stubs: + self._stubs["delete_goldengate_deployment"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/DeleteGoldengateDeployment", + request_serializer=goldengate_deployment.DeleteGoldengateDeploymentRequest.serialize, + response_deserializer=operations_pb2.Operation.FromString, + ) + ) + return self._stubs["delete_goldengate_deployment"] + + @property + def stop_goldengate_deployment( + self, + ) -> Callable[ + [goldengate_deployment.StopGoldengateDeploymentRequest], + Awaitable[operations_pb2.Operation], + ]: + r"""Return a callable for the stop goldengate deployment method over gRPC. + + Stops a single GoldengateDeployment. + + Returns: + Callable[[~.StopGoldengateDeploymentRequest], + Awaitable[~.Operation]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "stop_goldengate_deployment" not in self._stubs: + self._stubs["stop_goldengate_deployment"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/StopGoldengateDeployment", + request_serializer=goldengate_deployment.StopGoldengateDeploymentRequest.serialize, + response_deserializer=operations_pb2.Operation.FromString, + ) + ) + return self._stubs["stop_goldengate_deployment"] + + @property + def start_goldengate_deployment( + self, + ) -> Callable[ + [goldengate_deployment.StartGoldengateDeploymentRequest], + Awaitable[operations_pb2.Operation], + ]: + r"""Return a callable for the start goldengate deployment method over gRPC. + + Starts a single GoldengateDeployment. + + Returns: + Callable[[~.StartGoldengateDeploymentRequest], + Awaitable[~.Operation]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "start_goldengate_deployment" not in self._stubs: + self._stubs["start_goldengate_deployment"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/StartGoldengateDeployment", + request_serializer=goldengate_deployment.StartGoldengateDeploymentRequest.serialize, + response_deserializer=operations_pb2.Operation.FromString, + ) + ) + return self._stubs["start_goldengate_deployment"] + + @property + def list_goldengate_connections( + self, + ) -> Callable[ + [goldengate_connection.ListGoldengateConnectionsRequest], + Awaitable[goldengate_connection.ListGoldengateConnectionsResponse], + ]: + r"""Return a callable for the list goldengate connections method over gRPC. + + Lists all the GoldengateConnections for the given + project and location. + + Returns: + Callable[[~.ListGoldengateConnectionsRequest], + Awaitable[~.ListGoldengateConnectionsResponse]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "list_goldengate_connections" not in self._stubs: + self._stubs["list_goldengate_connections"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/ListGoldengateConnections", + request_serializer=goldengate_connection.ListGoldengateConnectionsRequest.serialize, + response_deserializer=goldengate_connection.ListGoldengateConnectionsResponse.deserialize, + ) + ) + return self._stubs["list_goldengate_connections"] + + @property + def get_goldengate_connection( + self, + ) -> Callable[ + [goldengate_connection.GetGoldengateConnectionRequest], + Awaitable[goldengate_connection.GoldengateConnection], + ]: + r"""Return a callable for the get goldengate connection method over gRPC. + + Gets details of a single GoldengateConnection. + + Returns: + Callable[[~.GetGoldengateConnectionRequest], + Awaitable[~.GoldengateConnection]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "get_goldengate_connection" not in self._stubs: + self._stubs["get_goldengate_connection"] = self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/GetGoldengateConnection", + request_serializer=goldengate_connection.GetGoldengateConnectionRequest.serialize, + response_deserializer=goldengate_connection.GoldengateConnection.deserialize, + ) + return self._stubs["get_goldengate_connection"] + + @property + def create_goldengate_connection( + self, + ) -> Callable[ + [gco_goldengate_connection.CreateGoldengateConnectionRequest], + Awaitable[operations_pb2.Operation], + ]: + r"""Return a callable for the create goldengate connection method over gRPC. + + Creates a new GoldengateConnection in a given project + and location. + + Returns: + Callable[[~.CreateGoldengateConnectionRequest], + Awaitable[~.Operation]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "create_goldengate_connection" not in self._stubs: + self._stubs["create_goldengate_connection"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/CreateGoldengateConnection", + request_serializer=gco_goldengate_connection.CreateGoldengateConnectionRequest.serialize, + response_deserializer=operations_pb2.Operation.FromString, + ) + ) + return self._stubs["create_goldengate_connection"] + + @property + def delete_goldengate_connection( + self, + ) -> Callable[ + [goldengate_connection.DeleteGoldengateConnectionRequest], + Awaitable[operations_pb2.Operation], + ]: + r"""Return a callable for the delete goldengate connection method over gRPC. + + Deletes a single GoldengateConnection. + + Returns: + Callable[[~.DeleteGoldengateConnectionRequest], + Awaitable[~.Operation]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "delete_goldengate_connection" not in self._stubs: + self._stubs["delete_goldengate_connection"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/DeleteGoldengateConnection", + request_serializer=goldengate_connection.DeleteGoldengateConnectionRequest.serialize, + response_deserializer=operations_pb2.Operation.FromString, + ) + ) + return self._stubs["delete_goldengate_connection"] + + @property + def get_goldengate_deployment_version( + self, + ) -> Callable[ + [goldengate_deployment_version.GetGoldengateDeploymentVersionRequest], + Awaitable[goldengate_deployment_version.GoldengateDeploymentVersion], + ]: + r"""Return a callable for the get goldengate deployment + version method over gRPC. + + Gets details of a single GoldengateDeploymentVersion. + + Returns: + Callable[[~.GetGoldengateDeploymentVersionRequest], + Awaitable[~.GoldengateDeploymentVersion]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "get_goldengate_deployment_version" not in self._stubs: + self._stubs["get_goldengate_deployment_version"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/GetGoldengateDeploymentVersion", + request_serializer=goldengate_deployment_version.GetGoldengateDeploymentVersionRequest.serialize, + response_deserializer=goldengate_deployment_version.GoldengateDeploymentVersion.deserialize, + ) + ) + return self._stubs["get_goldengate_deployment_version"] + + @property + def list_goldengate_deployment_versions( + self, + ) -> Callable[ + [goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest], + Awaitable[ + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse + ], + ]: + r"""Return a callable for the list goldengate deployment + versions method over gRPC. + + Lists GoldengateDeploymentVersions in a given project + and location. + + Returns: + Callable[[~.ListGoldengateDeploymentVersionsRequest], + Awaitable[~.ListGoldengateDeploymentVersionsResponse]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "list_goldengate_deployment_versions" not in self._stubs: + self._stubs["list_goldengate_deployment_versions"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/ListGoldengateDeploymentVersions", + request_serializer=goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest.serialize, + response_deserializer=goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse.deserialize, + ) + ) + return self._stubs["list_goldengate_deployment_versions"] + + @property + def get_goldengate_deployment_type( + self, + ) -> Callable[ + [goldengate_deployment_type.GetGoldengateDeploymentTypeRequest], + Awaitable[goldengate_deployment_type.GoldengateDeploymentType], + ]: + r"""Return a callable for the get goldengate deployment type method over gRPC. + + Gets details of a single GoldenGateDeploymentType. + + Returns: + Callable[[~.GetGoldengateDeploymentTypeRequest], + Awaitable[~.GoldengateDeploymentType]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "get_goldengate_deployment_type" not in self._stubs: + self._stubs["get_goldengate_deployment_type"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/GetGoldengateDeploymentType", + request_serializer=goldengate_deployment_type.GetGoldengateDeploymentTypeRequest.serialize, + response_deserializer=goldengate_deployment_type.GoldengateDeploymentType.deserialize, + ) + ) + return self._stubs["get_goldengate_deployment_type"] + + @property + def list_goldengate_deployment_types( + self, + ) -> Callable[ + [goldengate_deployment_type.ListGoldengateDeploymentTypesRequest], + Awaitable[goldengate_deployment_type.ListGoldengateDeploymentTypesResponse], + ]: + r"""Return a callable for the list goldengate deployment + types method over gRPC. + + Lists GoldenGateDeploymentTypes in a given project + and location. + + Returns: + Callable[[~.ListGoldengateDeploymentTypesRequest], + Awaitable[~.ListGoldengateDeploymentTypesResponse]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "list_goldengate_deployment_types" not in self._stubs: + self._stubs["list_goldengate_deployment_types"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/ListGoldengateDeploymentTypes", + request_serializer=goldengate_deployment_type.ListGoldengateDeploymentTypesRequest.serialize, + response_deserializer=goldengate_deployment_type.ListGoldengateDeploymentTypesResponse.deserialize, + ) + ) + return self._stubs["list_goldengate_deployment_types"] + + @property + def get_goldengate_deployment_environment( + self, + ) -> Callable[ + [goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest], + Awaitable[goldengate_deployment_environment.GoldengateDeploymentEnvironment], + ]: + r"""Return a callable for the get goldengate deployment + environment method over gRPC. + + Gets details of a single + GoldengateDeploymentEnvironment. + + Returns: + Callable[[~.GetGoldengateDeploymentEnvironmentRequest], + Awaitable[~.GoldengateDeploymentEnvironment]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "get_goldengate_deployment_environment" not in self._stubs: + self._stubs["get_goldengate_deployment_environment"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/GetGoldengateDeploymentEnvironment", + request_serializer=goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest.serialize, + response_deserializer=goldengate_deployment_environment.GoldengateDeploymentEnvironment.deserialize, + ) + ) + return self._stubs["get_goldengate_deployment_environment"] + + @property + def list_goldengate_deployment_environments( + self, + ) -> Callable[ + [goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest], + Awaitable[ + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse + ], + ]: + r"""Return a callable for the list goldengate deployment + environments method over gRPC. + + Lists GoldengateDeploymentEnvironments in a given + project and location. + + Returns: + Callable[[~.ListGoldengateDeploymentEnvironmentsRequest], + Awaitable[~.ListGoldengateDeploymentEnvironmentsResponse]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "list_goldengate_deployment_environments" not in self._stubs: + self._stubs["list_goldengate_deployment_environments"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/ListGoldengateDeploymentEnvironments", + request_serializer=goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest.serialize, + response_deserializer=goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse.deserialize, + ) + ) + return self._stubs["list_goldengate_deployment_environments"] + + @property + def get_goldengate_connection_type( + self, + ) -> Callable[ + [goldengate_connection_type.GetGoldengateConnectionTypeRequest], + Awaitable[goldengate_connection_type.GoldengateConnectionType], + ]: + r"""Return a callable for the get goldengate connection type method over gRPC. + + Gets details of a single GoldengateConnectionType. + + Returns: + Callable[[~.GetGoldengateConnectionTypeRequest], + Awaitable[~.GoldengateConnectionType]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "get_goldengate_connection_type" not in self._stubs: + self._stubs["get_goldengate_connection_type"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/GetGoldengateConnectionType", + request_serializer=goldengate_connection_type.GetGoldengateConnectionTypeRequest.serialize, + response_deserializer=goldengate_connection_type.GoldengateConnectionType.deserialize, + ) + ) + return self._stubs["get_goldengate_connection_type"] + + @property + def list_goldengate_connection_types( + self, + ) -> Callable[ + [goldengate_connection_type.ListGoldengateConnectionTypesRequest], + Awaitable[goldengate_connection_type.ListGoldengateConnectionTypesResponse], + ]: + r"""Return a callable for the list goldengate connection + types method over gRPC. + + Lists GoldengateConnectionTypes in a given project + and location. + + Returns: + Callable[[~.ListGoldengateConnectionTypesRequest], + Awaitable[~.ListGoldengateConnectionTypesResponse]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "list_goldengate_connection_types" not in self._stubs: + self._stubs["list_goldengate_connection_types"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/ListGoldengateConnectionTypes", + request_serializer=goldengate_connection_type.ListGoldengateConnectionTypesRequest.serialize, + response_deserializer=goldengate_connection_type.ListGoldengateConnectionTypesResponse.deserialize, + ) + ) + return self._stubs["list_goldengate_connection_types"] + + @property + def list_db_versions( + self, + ) -> Callable[ + [db_version.ListDbVersionsRequest], Awaitable[db_version.ListDbVersionsResponse] + ]: + r"""Return a callable for the list db versions method over gRPC. + + List DbVersions for the given project and location. + + Returns: + Callable[[~.ListDbVersionsRequest], + Awaitable[~.ListDbVersionsResponse]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "list_db_versions" not in self._stubs: + self._stubs["list_db_versions"] = self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/ListDbVersions", + request_serializer=db_version.ListDbVersionsRequest.serialize, + response_deserializer=db_version.ListDbVersionsResponse.deserialize, + ) + return self._stubs["list_db_versions"] + + @property + def list_database_character_sets( + self, + ) -> Callable[ + [database_character_set.ListDatabaseCharacterSetsRequest], + Awaitable[database_character_set.ListDatabaseCharacterSetsResponse], + ]: + r"""Return a callable for the list database character sets method over gRPC. + + List DatabaseCharacterSets for the given project and + location. + + Returns: + Callable[[~.ListDatabaseCharacterSetsRequest], + Awaitable[~.ListDatabaseCharacterSetsResponse]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "list_database_character_sets" not in self._stubs: + self._stubs["list_database_character_sets"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/ListDatabaseCharacterSets", + request_serializer=database_character_set.ListDatabaseCharacterSetsRequest.serialize, + response_deserializer=database_character_set.ListDatabaseCharacterSetsResponse.deserialize, + ) + ) + return self._stubs["list_database_character_sets"] + + @property + def list_goldengate_connection_assignments( + self, + ) -> Callable[ + [goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest], + Awaitable[ + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse + ], + ]: + r"""Return a callable for the list goldengate connection + assignments method over gRPC. + + Lists GoldengateConnectionAssignments in a given + project and location. + + Returns: + Callable[[~.ListGoldengateConnectionAssignmentsRequest], + Awaitable[~.ListGoldengateConnectionAssignmentsResponse]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "list_goldengate_connection_assignments" not in self._stubs: + self._stubs["list_goldengate_connection_assignments"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/ListGoldengateConnectionAssignments", + request_serializer=goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest.serialize, + response_deserializer=goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse.deserialize, + ) + ) + return self._stubs["list_goldengate_connection_assignments"] + + @property + def get_goldengate_connection_assignment( + self, + ) -> Callable[ + [goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest], + Awaitable[goldengate_connection_assignment.GoldengateConnectionAssignment], + ]: + r"""Return a callable for the get goldengate connection + assignment method over gRPC. + + Gets details of a single + GoldengateConnectionAssignment. + + Returns: + Callable[[~.GetGoldengateConnectionAssignmentRequest], + Awaitable[~.GoldengateConnectionAssignment]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "get_goldengate_connection_assignment" not in self._stubs: + self._stubs["get_goldengate_connection_assignment"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/GetGoldengateConnectionAssignment", + request_serializer=goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest.serialize, + response_deserializer=goldengate_connection_assignment.GoldengateConnectionAssignment.deserialize, + ) + ) + return self._stubs["get_goldengate_connection_assignment"] + + @property + def create_goldengate_connection_assignment( + self, + ) -> Callable[ + [ + gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest + ], + Awaitable[operations_pb2.Operation], + ]: + r"""Return a callable for the create goldengate connection + assignment method over gRPC. + + Creates a new GoldengateConnectionAssignment in a + given project and location. + + Returns: + Callable[[~.CreateGoldengateConnectionAssignmentRequest], + Awaitable[~.Operation]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "create_goldengate_connection_assignment" not in self._stubs: + self._stubs["create_goldengate_connection_assignment"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/CreateGoldengateConnectionAssignment", + request_serializer=gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest.serialize, + response_deserializer=operations_pb2.Operation.FromString, + ) + ) + return self._stubs["create_goldengate_connection_assignment"] + + @property + def delete_goldengate_connection_assignment( + self, + ) -> Callable[ + [goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest], + Awaitable[operations_pb2.Operation], + ]: + r"""Return a callable for the delete goldengate connection + assignment method over gRPC. + + Deletes a single GoldengateConnectionAssignment. + + Returns: + Callable[[~.DeleteGoldengateConnectionAssignmentRequest], + Awaitable[~.Operation]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "delete_goldengate_connection_assignment" not in self._stubs: + self._stubs["delete_goldengate_connection_assignment"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/DeleteGoldengateConnectionAssignment", + request_serializer=goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest.serialize, + response_deserializer=operations_pb2.Operation.FromString, + ) + ) + return self._stubs["delete_goldengate_connection_assignment"] + + @property + def test_goldengate_connection_assignment( + self, + ) -> Callable[ + [goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest], + Awaitable[ + goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse + ], + ]: + r"""Return a callable for the test goldengate connection + assignment method over gRPC. + + Tests a single GoldengateConnectionAssignment. + + Returns: + Callable[[~.TestGoldengateConnectionAssignmentRequest], + Awaitable[~.TestGoldengateConnectionAssignmentResponse]]: + A function that, when called, will call the underlying RPC + on the server. + """ + # Generate a "stub function" on-the-fly which will actually make + # the request. + # gRPC handles serialization and deserialization, so we just need + # to pass in the functions for each. + if "test_goldengate_connection_assignment" not in self._stubs: + self._stubs["test_goldengate_connection_assignment"] = ( + self._logged_channel.unary_unary( + "/google.cloud.oracledatabase.v1.OracleDatabase/TestGoldengateConnectionAssignment", + request_serializer=goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest.serialize, + response_deserializer=goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse.deserialize, + ) + ) + return self._stubs["test_goldengate_connection_assignment"] + + def _prep_wrapped_messages(self, client_info): + """Precompute the wrapped methods, overriding the base class method to use async wrappers.""" + self._wrapped_methods = { + self.list_cloud_exadata_infrastructures: self._wrap_method( + self.list_cloud_exadata_infrastructures, + default_retry=retries.AsyncRetry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.get_cloud_exadata_infrastructure: self._wrap_method( + self.get_cloud_exadata_infrastructure, + default_retry=retries.AsyncRetry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.create_cloud_exadata_infrastructure: self._wrap_method( + self.create_cloud_exadata_infrastructure, + default_timeout=None, + client_info=client_info, + ), + self.delete_cloud_exadata_infrastructure: self._wrap_method( + self.delete_cloud_exadata_infrastructure, + default_timeout=None, + client_info=client_info, + ), + self.list_cloud_vm_clusters: self._wrap_method( + self.list_cloud_vm_clusters, + default_retry=retries.AsyncRetry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.get_cloud_vm_cluster: self._wrap_method( + self.get_cloud_vm_cluster, + default_retry=retries.AsyncRetry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.create_cloud_vm_cluster: self._wrap_method( + self.create_cloud_vm_cluster, + default_timeout=None, + client_info=client_info, + ), + self.delete_cloud_vm_cluster: self._wrap_method( + self.delete_cloud_vm_cluster, + default_timeout=None, + client_info=client_info, + ), + self.list_entitlements: self._wrap_method( + self.list_entitlements, + default_retry=retries.AsyncRetry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.list_db_servers: self._wrap_method( + self.list_db_servers, + default_retry=retries.AsyncRetry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.list_db_nodes: self._wrap_method( + self.list_db_nodes, + default_retry=retries.AsyncRetry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.list_gi_versions: self._wrap_method( + self.list_gi_versions, + default_retry=retries.AsyncRetry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.list_minor_versions: self._wrap_method( + self.list_minor_versions, + default_retry=retries.AsyncRetry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.list_db_system_shapes: self._wrap_method( + self.list_db_system_shapes, + default_retry=retries.AsyncRetry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.list_autonomous_databases: self._wrap_method( + self.list_autonomous_databases, + default_retry=retries.AsyncRetry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.get_autonomous_database: self._wrap_method( + self.get_autonomous_database, + default_retry=retries.AsyncRetry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, client_info=client_info, ), self.create_autonomous_database: self._wrap_method( @@ -2705,6 +3463,176 @@ def _prep_wrapped_messages(self, client_info): default_timeout=None, client_info=client_info, ), + self.list_goldengate_deployments: self._wrap_method( + self.list_goldengate_deployments, + default_retry=retries.AsyncRetry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.get_goldengate_deployment: self._wrap_method( + self.get_goldengate_deployment, + default_retry=retries.AsyncRetry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.create_goldengate_deployment: self._wrap_method( + self.create_goldengate_deployment, + default_timeout=None, + client_info=client_info, + ), + self.delete_goldengate_deployment: self._wrap_method( + self.delete_goldengate_deployment, + default_timeout=None, + client_info=client_info, + ), + self.stop_goldengate_deployment: self._wrap_method( + self.stop_goldengate_deployment, + default_timeout=None, + client_info=client_info, + ), + self.start_goldengate_deployment: self._wrap_method( + self.start_goldengate_deployment, + default_timeout=None, + client_info=client_info, + ), + self.list_goldengate_connections: self._wrap_method( + self.list_goldengate_connections, + default_retry=retries.AsyncRetry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.get_goldengate_connection: self._wrap_method( + self.get_goldengate_connection, + default_retry=retries.AsyncRetry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.create_goldengate_connection: self._wrap_method( + self.create_goldengate_connection, + default_timeout=None, + client_info=client_info, + ), + self.delete_goldengate_connection: self._wrap_method( + self.delete_goldengate_connection, + default_timeout=None, + client_info=client_info, + ), + self.get_goldengate_deployment_version: self._wrap_method( + self.get_goldengate_deployment_version, + default_timeout=None, + client_info=client_info, + ), + self.list_goldengate_deployment_versions: self._wrap_method( + self.list_goldengate_deployment_versions, + default_retry=retries.AsyncRetry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.get_goldengate_deployment_type: self._wrap_method( + self.get_goldengate_deployment_type, + default_timeout=None, + client_info=client_info, + ), + self.list_goldengate_deployment_types: self._wrap_method( + self.list_goldengate_deployment_types, + default_retry=retries.AsyncRetry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.get_goldengate_deployment_environment: self._wrap_method( + self.get_goldengate_deployment_environment, + default_timeout=None, + client_info=client_info, + ), + self.list_goldengate_deployment_environments: self._wrap_method( + self.list_goldengate_deployment_environments, + default_retry=retries.AsyncRetry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.get_goldengate_connection_type: self._wrap_method( + self.get_goldengate_connection_type, + default_timeout=None, + client_info=client_info, + ), + self.list_goldengate_connection_types: self._wrap_method( + self.list_goldengate_connection_types, + default_retry=retries.AsyncRetry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), self.list_db_versions: self._wrap_method( self.list_db_versions, default_retry=retries.AsyncRetry( @@ -2735,6 +3663,51 @@ def _prep_wrapped_messages(self, client_info): default_timeout=60.0, client_info=client_info, ), + self.list_goldengate_connection_assignments: self._wrap_method( + self.list_goldengate_connection_assignments, + default_retry=retries.AsyncRetry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.get_goldengate_connection_assignment: self._wrap_method( + self.get_goldengate_connection_assignment, + default_retry=retries.AsyncRetry( + initial=1.0, + maximum=10.0, + multiplier=1.3, + predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, + core_exceptions.ServiceUnavailable, + ), + deadline=60.0, + ), + default_timeout=60.0, + client_info=client_info, + ), + self.create_goldengate_connection_assignment: self._wrap_method( + self.create_goldengate_connection_assignment, + default_timeout=None, + client_info=client_info, + ), + self.delete_goldengate_connection_assignment: self._wrap_method( + self.delete_goldengate_connection_assignment, + default_timeout=None, + client_info=client_info, + ), + self.test_goldengate_connection_assignment: self._wrap_method( + self.test_goldengate_connection_assignment, + default_timeout=None, + client_info=client_info, + ), self.get_location: self._wrap_method( self.get_location, default_timeout=None, diff --git a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/transports/rest.py b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/transports/rest.py index 0af0ced60d89..c876eaea4d4e 100644 --- a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/transports/rest.py +++ b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/transports/rest.py @@ -40,6 +40,13 @@ exadata_infra, exadb_vm_cluster, exascale_db_storage_vault, + goldengate_connection, + goldengate_connection_assignment, + goldengate_connection_type, + goldengate_deployment, + goldengate_deployment_environment, + goldengate_deployment_type, + goldengate_deployment_version, minor_version, odb_network, odb_subnet, @@ -51,6 +58,15 @@ from google.cloud.oracledatabase_v1.types import ( exascale_db_storage_vault as gco_exascale_db_storage_vault, ) +from google.cloud.oracledatabase_v1.types import ( + goldengate_connection as gco_goldengate_connection, +) +from google.cloud.oracledatabase_v1.types import ( + goldengate_connection_assignment as gco_goldengate_connection_assignment, +) +from google.cloud.oracledatabase_v1.types import ( + goldengate_deployment as gco_goldengate_deployment, +) from google.cloud.oracledatabase_v1.types import odb_network as gco_odb_network from google.cloud.oracledatabase_v1.types import odb_subnet as gco_odb_subnet @@ -144,6 +160,30 @@ def post_create_exascale_db_storage_vault(self, response): logging.log(f"Received response: {response}") return response + def pre_create_goldengate_connection(self, request, metadata): + logging.log(f"Received request: {request}") + return request, metadata + + def post_create_goldengate_connection(self, response): + logging.log(f"Received response: {response}") + return response + + def pre_create_goldengate_connection_assignment(self, request, metadata): + logging.log(f"Received request: {request}") + return request, metadata + + def post_create_goldengate_connection_assignment(self, response): + logging.log(f"Received response: {response}") + return response + + def pre_create_goldengate_deployment(self, request, metadata): + logging.log(f"Received request: {request}") + return request, metadata + + def post_create_goldengate_deployment(self, response): + logging.log(f"Received response: {response}") + return response + def pre_create_odb_network(self, request, metadata): logging.log(f"Received request: {request}") return request, metadata @@ -208,6 +248,30 @@ def post_delete_exascale_db_storage_vault(self, response): logging.log(f"Received response: {response}") return response + def pre_delete_goldengate_connection(self, request, metadata): + logging.log(f"Received request: {request}") + return request, metadata + + def post_delete_goldengate_connection(self, response): + logging.log(f"Received response: {response}") + return response + + def pre_delete_goldengate_connection_assignment(self, request, metadata): + logging.log(f"Received request: {request}") + return request, metadata + + def post_delete_goldengate_connection_assignment(self, response): + logging.log(f"Received response: {response}") + return response + + def pre_delete_goldengate_deployment(self, request, metadata): + logging.log(f"Received request: {request}") + return request, metadata + + def post_delete_goldengate_deployment(self, response): + logging.log(f"Received response: {response}") + return response + def pre_delete_odb_network(self, request, metadata): logging.log(f"Received request: {request}") return request, metadata @@ -296,6 +360,62 @@ def post_get_exascale_db_storage_vault(self, response): logging.log(f"Received response: {response}") return response + def pre_get_goldengate_connection(self, request, metadata): + logging.log(f"Received request: {request}") + return request, metadata + + def post_get_goldengate_connection(self, response): + logging.log(f"Received response: {response}") + return response + + def pre_get_goldengate_connection_assignment(self, request, metadata): + logging.log(f"Received request: {request}") + return request, metadata + + def post_get_goldengate_connection_assignment(self, response): + logging.log(f"Received response: {response}") + return response + + def pre_get_goldengate_connection_type(self, request, metadata): + logging.log(f"Received request: {request}") + return request, metadata + + def post_get_goldengate_connection_type(self, response): + logging.log(f"Received response: {response}") + return response + + def pre_get_goldengate_deployment(self, request, metadata): + logging.log(f"Received request: {request}") + return request, metadata + + def post_get_goldengate_deployment(self, response): + logging.log(f"Received response: {response}") + return response + + def pre_get_goldengate_deployment_environment(self, request, metadata): + logging.log(f"Received request: {request}") + return request, metadata + + def post_get_goldengate_deployment_environment(self, response): + logging.log(f"Received response: {response}") + return response + + def pre_get_goldengate_deployment_type(self, request, metadata): + logging.log(f"Received request: {request}") + return request, metadata + + def post_get_goldengate_deployment_type(self, response): + logging.log(f"Received response: {response}") + return response + + def pre_get_goldengate_deployment_version(self, request, metadata): + logging.log(f"Received request: {request}") + return request, metadata + + def post_get_goldengate_deployment_version(self, response): + logging.log(f"Received response: {response}") + return response + def pre_get_odb_network(self, request, metadata): logging.log(f"Received request: {request}") return request, metadata @@ -464,6 +584,62 @@ def post_list_gi_versions(self, response): logging.log(f"Received response: {response}") return response + def pre_list_goldengate_connection_assignments(self, request, metadata): + logging.log(f"Received request: {request}") + return request, metadata + + def post_list_goldengate_connection_assignments(self, response): + logging.log(f"Received response: {response}") + return response + + def pre_list_goldengate_connections(self, request, metadata): + logging.log(f"Received request: {request}") + return request, metadata + + def post_list_goldengate_connections(self, response): + logging.log(f"Received response: {response}") + return response + + def pre_list_goldengate_connection_types(self, request, metadata): + logging.log(f"Received request: {request}") + return request, metadata + + def post_list_goldengate_connection_types(self, response): + logging.log(f"Received response: {response}") + return response + + def pre_list_goldengate_deployment_environments(self, request, metadata): + logging.log(f"Received request: {request}") + return request, metadata + + def post_list_goldengate_deployment_environments(self, response): + logging.log(f"Received response: {response}") + return response + + def pre_list_goldengate_deployments(self, request, metadata): + logging.log(f"Received request: {request}") + return request, metadata + + def post_list_goldengate_deployments(self, response): + logging.log(f"Received response: {response}") + return response + + def pre_list_goldengate_deployment_types(self, request, metadata): + logging.log(f"Received request: {request}") + return request, metadata + + def post_list_goldengate_deployment_types(self, response): + logging.log(f"Received response: {response}") + return response + + def pre_list_goldengate_deployment_versions(self, request, metadata): + logging.log(f"Received request: {request}") + return request, metadata + + def post_list_goldengate_deployment_versions(self, response): + logging.log(f"Received response: {response}") + return response + def pre_list_minor_versions(self, request, metadata): logging.log(f"Received request: {request}") return request, metadata @@ -528,6 +704,14 @@ def post_start_autonomous_database(self, response): logging.log(f"Received response: {response}") return response + def pre_start_goldengate_deployment(self, request, metadata): + logging.log(f"Received request: {request}") + return request, metadata + + def post_start_goldengate_deployment(self, response): + logging.log(f"Received response: {response}") + return response + def pre_stop_autonomous_database(self, request, metadata): logging.log(f"Received request: {request}") return request, metadata @@ -536,6 +720,14 @@ def post_stop_autonomous_database(self, response): logging.log(f"Received response: {response}") return response + def pre_stop_goldengate_deployment(self, request, metadata): + logging.log(f"Received request: {request}") + return request, metadata + + def post_stop_goldengate_deployment(self, response): + logging.log(f"Received response: {response}") + return response + def pre_switchover_autonomous_database(self, request, metadata): logging.log(f"Received request: {request}") return request, metadata @@ -544,6 +736,14 @@ def post_switchover_autonomous_database(self, response): logging.log(f"Received response: {response}") return response + def pre_test_goldengate_connection_assignment(self, request, metadata): + logging.log(f"Received request: {request}") + return request, metadata + + def post_test_goldengate_connection_assignment(self, response): + logging.log(f"Received response: {response}") + return response + def pre_update_autonomous_database(self, request, metadata): logging.log(f"Received request: {request}") return request, metadata @@ -859,6 +1059,153 @@ def post_create_exascale_db_storage_vault_with_metadata( """ return response, metadata + def pre_create_goldengate_connection( + self, + request: gco_goldengate_connection.CreateGoldengateConnectionRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + gco_goldengate_connection.CreateGoldengateConnectionRequest, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Pre-rpc interceptor for create_goldengate_connection + + Override in a subclass to manipulate the request or metadata + before they are sent to the OracleDatabase server. + """ + return request, metadata + + def post_create_goldengate_connection( + self, response: operations_pb2.Operation + ) -> operations_pb2.Operation: + """Post-rpc interceptor for create_goldengate_connection + + DEPRECATED. Please use the `post_create_goldengate_connection_with_metadata` + interceptor instead. + + Override in a subclass to read or manipulate the response + after it is returned by the OracleDatabase server but before + it is returned to user code. This `post_create_goldengate_connection` interceptor runs + before the `post_create_goldengate_connection_with_metadata` interceptor. + """ + return response + + def post_create_goldengate_connection_with_metadata( + self, + response: operations_pb2.Operation, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: + """Post-rpc interceptor for create_goldengate_connection + + Override in a subclass to read or manipulate the response or metadata after it + is returned by the OracleDatabase server but before it is returned to user code. + + We recommend only using this `post_create_goldengate_connection_with_metadata` + interceptor in new development instead of the `post_create_goldengate_connection` interceptor. + When both interceptors are used, this `post_create_goldengate_connection_with_metadata` interceptor runs after the + `post_create_goldengate_connection` interceptor. The (possibly modified) response returned by + `post_create_goldengate_connection` will be passed to + `post_create_goldengate_connection_with_metadata`. + """ + return response, metadata + + def pre_create_goldengate_connection_assignment( + self, + request: gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Pre-rpc interceptor for create_goldengate_connection_assignment + + Override in a subclass to manipulate the request or metadata + before they are sent to the OracleDatabase server. + """ + return request, metadata + + def post_create_goldengate_connection_assignment( + self, response: operations_pb2.Operation + ) -> operations_pb2.Operation: + """Post-rpc interceptor for create_goldengate_connection_assignment + + DEPRECATED. Please use the `post_create_goldengate_connection_assignment_with_metadata` + interceptor instead. + + Override in a subclass to read or manipulate the response + after it is returned by the OracleDatabase server but before + it is returned to user code. This `post_create_goldengate_connection_assignment` interceptor runs + before the `post_create_goldengate_connection_assignment_with_metadata` interceptor. + """ + return response + + def post_create_goldengate_connection_assignment_with_metadata( + self, + response: operations_pb2.Operation, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: + """Post-rpc interceptor for create_goldengate_connection_assignment + + Override in a subclass to read or manipulate the response or metadata after it + is returned by the OracleDatabase server but before it is returned to user code. + + We recommend only using this `post_create_goldengate_connection_assignment_with_metadata` + interceptor in new development instead of the `post_create_goldengate_connection_assignment` interceptor. + When both interceptors are used, this `post_create_goldengate_connection_assignment_with_metadata` interceptor runs after the + `post_create_goldengate_connection_assignment` interceptor. The (possibly modified) response returned by + `post_create_goldengate_connection_assignment` will be passed to + `post_create_goldengate_connection_assignment_with_metadata`. + """ + return response, metadata + + def pre_create_goldengate_deployment( + self, + request: gco_goldengate_deployment.CreateGoldengateDeploymentRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + gco_goldengate_deployment.CreateGoldengateDeploymentRequest, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Pre-rpc interceptor for create_goldengate_deployment + + Override in a subclass to manipulate the request or metadata + before they are sent to the OracleDatabase server. + """ + return request, metadata + + def post_create_goldengate_deployment( + self, response: operations_pb2.Operation + ) -> operations_pb2.Operation: + """Post-rpc interceptor for create_goldengate_deployment + + DEPRECATED. Please use the `post_create_goldengate_deployment_with_metadata` + interceptor instead. + + Override in a subclass to read or manipulate the response + after it is returned by the OracleDatabase server but before + it is returned to user code. This `post_create_goldengate_deployment` interceptor runs + before the `post_create_goldengate_deployment_with_metadata` interceptor. + """ + return response + + def post_create_goldengate_deployment_with_metadata( + self, + response: operations_pb2.Operation, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: + """Post-rpc interceptor for create_goldengate_deployment + + Override in a subclass to read or manipulate the response or metadata after it + is returned by the OracleDatabase server but before it is returned to user code. + + We recommend only using this `post_create_goldengate_deployment_with_metadata` + interceptor in new development instead of the `post_create_goldengate_deployment` interceptor. + When both interceptors are used, this `post_create_goldengate_deployment_with_metadata` interceptor runs after the + `post_create_goldengate_deployment` interceptor. The (possibly modified) response returned by + `post_create_goldengate_deployment` will be passed to + `post_create_goldengate_deployment_with_metadata`. + """ + return response, metadata + def pre_create_odb_network( self, request: gco_odb_network.CreateOdbNetworkRequest, @@ -1248,49 +1595,196 @@ def post_delete_exascale_db_storage_vault_with_metadata( """ return response, metadata - def pre_delete_odb_network( + def pre_delete_goldengate_connection( self, - request: odb_network.DeleteOdbNetworkRequest, + request: goldengate_connection.DeleteGoldengateConnectionRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - odb_network.DeleteOdbNetworkRequest, Sequence[Tuple[str, Union[str, bytes]]] + goldengate_connection.DeleteGoldengateConnectionRequest, + Sequence[Tuple[str, Union[str, bytes]]], ]: - """Pre-rpc interceptor for delete_odb_network + """Pre-rpc interceptor for delete_goldengate_connection Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_delete_odb_network( + def post_delete_goldengate_connection( self, response: operations_pb2.Operation ) -> operations_pb2.Operation: - """Post-rpc interceptor for delete_odb_network + """Post-rpc interceptor for delete_goldengate_connection - DEPRECATED. Please use the `post_delete_odb_network_with_metadata` + DEPRECATED. Please use the `post_delete_goldengate_connection_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_delete_odb_network` interceptor runs - before the `post_delete_odb_network_with_metadata` interceptor. + it is returned to user code. This `post_delete_goldengate_connection` interceptor runs + before the `post_delete_goldengate_connection_with_metadata` interceptor. """ return response - def post_delete_odb_network_with_metadata( + def post_delete_goldengate_connection_with_metadata( self, response: operations_pb2.Operation, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: - """Post-rpc interceptor for delete_odb_network + """Post-rpc interceptor for delete_goldengate_connection Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_delete_odb_network_with_metadata` - interceptor in new development instead of the `post_delete_odb_network` interceptor. - When both interceptors are used, this `post_delete_odb_network_with_metadata` interceptor runs after the - `post_delete_odb_network` interceptor. The (possibly modified) response returned by + We recommend only using this `post_delete_goldengate_connection_with_metadata` + interceptor in new development instead of the `post_delete_goldengate_connection` interceptor. + When both interceptors are used, this `post_delete_goldengate_connection_with_metadata` interceptor runs after the + `post_delete_goldengate_connection` interceptor. The (possibly modified) response returned by + `post_delete_goldengate_connection` will be passed to + `post_delete_goldengate_connection_with_metadata`. + """ + return response, metadata + + def pre_delete_goldengate_connection_assignment( + self, + request: goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Pre-rpc interceptor for delete_goldengate_connection_assignment + + Override in a subclass to manipulate the request or metadata + before they are sent to the OracleDatabase server. + """ + return request, metadata + + def post_delete_goldengate_connection_assignment( + self, response: operations_pb2.Operation + ) -> operations_pb2.Operation: + """Post-rpc interceptor for delete_goldengate_connection_assignment + + DEPRECATED. Please use the `post_delete_goldengate_connection_assignment_with_metadata` + interceptor instead. + + Override in a subclass to read or manipulate the response + after it is returned by the OracleDatabase server but before + it is returned to user code. This `post_delete_goldengate_connection_assignment` interceptor runs + before the `post_delete_goldengate_connection_assignment_with_metadata` interceptor. + """ + return response + + def post_delete_goldengate_connection_assignment_with_metadata( + self, + response: operations_pb2.Operation, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: + """Post-rpc interceptor for delete_goldengate_connection_assignment + + Override in a subclass to read or manipulate the response or metadata after it + is returned by the OracleDatabase server but before it is returned to user code. + + We recommend only using this `post_delete_goldengate_connection_assignment_with_metadata` + interceptor in new development instead of the `post_delete_goldengate_connection_assignment` interceptor. + When both interceptors are used, this `post_delete_goldengate_connection_assignment_with_metadata` interceptor runs after the + `post_delete_goldengate_connection_assignment` interceptor. The (possibly modified) response returned by + `post_delete_goldengate_connection_assignment` will be passed to + `post_delete_goldengate_connection_assignment_with_metadata`. + """ + return response, metadata + + def pre_delete_goldengate_deployment( + self, + request: goldengate_deployment.DeleteGoldengateDeploymentRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + goldengate_deployment.DeleteGoldengateDeploymentRequest, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Pre-rpc interceptor for delete_goldengate_deployment + + Override in a subclass to manipulate the request or metadata + before they are sent to the OracleDatabase server. + """ + return request, metadata + + def post_delete_goldengate_deployment( + self, response: operations_pb2.Operation + ) -> operations_pb2.Operation: + """Post-rpc interceptor for delete_goldengate_deployment + + DEPRECATED. Please use the `post_delete_goldengate_deployment_with_metadata` + interceptor instead. + + Override in a subclass to read or manipulate the response + after it is returned by the OracleDatabase server but before + it is returned to user code. This `post_delete_goldengate_deployment` interceptor runs + before the `post_delete_goldengate_deployment_with_metadata` interceptor. + """ + return response + + def post_delete_goldengate_deployment_with_metadata( + self, + response: operations_pb2.Operation, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: + """Post-rpc interceptor for delete_goldengate_deployment + + Override in a subclass to read or manipulate the response or metadata after it + is returned by the OracleDatabase server but before it is returned to user code. + + We recommend only using this `post_delete_goldengate_deployment_with_metadata` + interceptor in new development instead of the `post_delete_goldengate_deployment` interceptor. + When both interceptors are used, this `post_delete_goldengate_deployment_with_metadata` interceptor runs after the + `post_delete_goldengate_deployment` interceptor. The (possibly modified) response returned by + `post_delete_goldengate_deployment` will be passed to + `post_delete_goldengate_deployment_with_metadata`. + """ + return response, metadata + + def pre_delete_odb_network( + self, + request: odb_network.DeleteOdbNetworkRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + odb_network.DeleteOdbNetworkRequest, Sequence[Tuple[str, Union[str, bytes]]] + ]: + """Pre-rpc interceptor for delete_odb_network + + Override in a subclass to manipulate the request or metadata + before they are sent to the OracleDatabase server. + """ + return request, metadata + + def post_delete_odb_network( + self, response: operations_pb2.Operation + ) -> operations_pb2.Operation: + """Post-rpc interceptor for delete_odb_network + + DEPRECATED. Please use the `post_delete_odb_network_with_metadata` + interceptor instead. + + Override in a subclass to read or manipulate the response + after it is returned by the OracleDatabase server but before + it is returned to user code. This `post_delete_odb_network` interceptor runs + before the `post_delete_odb_network_with_metadata` interceptor. + """ + return response + + def post_delete_odb_network_with_metadata( + self, + response: operations_pb2.Operation, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: + """Post-rpc interceptor for delete_odb_network + + Override in a subclass to read or manipulate the response or metadata after it + is returned by the OracleDatabase server but before it is returned to user code. + + We recommend only using this `post_delete_odb_network_with_metadata` + interceptor in new development instead of the `post_delete_odb_network` interceptor. + When both interceptors are used, this `post_delete_odb_network_with_metadata` interceptor runs after the + `post_delete_odb_network` interceptor. The (possibly modified) response returned by `post_delete_odb_network` will be passed to `post_delete_odb_network_with_metadata`. """ @@ -1786,1962 +2280,6176 @@ def post_get_exascale_db_storage_vault_with_metadata( """ return response, metadata - def pre_get_odb_network( + def pre_get_goldengate_connection( self, - request: odb_network.GetOdbNetworkRequest, + request: goldengate_connection.GetGoldengateConnectionRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - odb_network.GetOdbNetworkRequest, Sequence[Tuple[str, Union[str, bytes]]] + goldengate_connection.GetGoldengateConnectionRequest, + Sequence[Tuple[str, Union[str, bytes]]], ]: - """Pre-rpc interceptor for get_odb_network + """Pre-rpc interceptor for get_goldengate_connection Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_get_odb_network( - self, response: odb_network.OdbNetwork - ) -> odb_network.OdbNetwork: - """Post-rpc interceptor for get_odb_network + def post_get_goldengate_connection( + self, response: goldengate_connection.GoldengateConnection + ) -> goldengate_connection.GoldengateConnection: + """Post-rpc interceptor for get_goldengate_connection - DEPRECATED. Please use the `post_get_odb_network_with_metadata` + DEPRECATED. Please use the `post_get_goldengate_connection_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_get_odb_network` interceptor runs - before the `post_get_odb_network_with_metadata` interceptor. + it is returned to user code. This `post_get_goldengate_connection` interceptor runs + before the `post_get_goldengate_connection_with_metadata` interceptor. """ return response - def post_get_odb_network_with_metadata( + def post_get_goldengate_connection_with_metadata( self, - response: odb_network.OdbNetwork, + response: goldengate_connection.GoldengateConnection, metadata: Sequence[Tuple[str, Union[str, bytes]]], - ) -> Tuple[odb_network.OdbNetwork, Sequence[Tuple[str, Union[str, bytes]]]]: - """Post-rpc interceptor for get_odb_network + ) -> Tuple[ + goldengate_connection.GoldengateConnection, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Post-rpc interceptor for get_goldengate_connection Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_get_odb_network_with_metadata` - interceptor in new development instead of the `post_get_odb_network` interceptor. - When both interceptors are used, this `post_get_odb_network_with_metadata` interceptor runs after the - `post_get_odb_network` interceptor. The (possibly modified) response returned by - `post_get_odb_network` will be passed to - `post_get_odb_network_with_metadata`. + We recommend only using this `post_get_goldengate_connection_with_metadata` + interceptor in new development instead of the `post_get_goldengate_connection` interceptor. + When both interceptors are used, this `post_get_goldengate_connection_with_metadata` interceptor runs after the + `post_get_goldengate_connection` interceptor. The (possibly modified) response returned by + `post_get_goldengate_connection` will be passed to + `post_get_goldengate_connection_with_metadata`. """ return response, metadata - def pre_get_odb_subnet( + def pre_get_goldengate_connection_assignment( self, - request: odb_subnet.GetOdbSubnetRequest, + request: goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], - ) -> Tuple[odb_subnet.GetOdbSubnetRequest, Sequence[Tuple[str, Union[str, bytes]]]]: - """Pre-rpc interceptor for get_odb_subnet + ) -> Tuple[ + goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Pre-rpc interceptor for get_goldengate_connection_assignment Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_get_odb_subnet( - self, response: odb_subnet.OdbSubnet - ) -> odb_subnet.OdbSubnet: - """Post-rpc interceptor for get_odb_subnet + def post_get_goldengate_connection_assignment( + self, response: goldengate_connection_assignment.GoldengateConnectionAssignment + ) -> goldengate_connection_assignment.GoldengateConnectionAssignment: + """Post-rpc interceptor for get_goldengate_connection_assignment - DEPRECATED. Please use the `post_get_odb_subnet_with_metadata` + DEPRECATED. Please use the `post_get_goldengate_connection_assignment_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_get_odb_subnet` interceptor runs - before the `post_get_odb_subnet_with_metadata` interceptor. + it is returned to user code. This `post_get_goldengate_connection_assignment` interceptor runs + before the `post_get_goldengate_connection_assignment_with_metadata` interceptor. """ return response - def post_get_odb_subnet_with_metadata( + def post_get_goldengate_connection_assignment_with_metadata( self, - response: odb_subnet.OdbSubnet, + response: goldengate_connection_assignment.GoldengateConnectionAssignment, metadata: Sequence[Tuple[str, Union[str, bytes]]], - ) -> Tuple[odb_subnet.OdbSubnet, Sequence[Tuple[str, Union[str, bytes]]]]: - """Post-rpc interceptor for get_odb_subnet + ) -> Tuple[ + goldengate_connection_assignment.GoldengateConnectionAssignment, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Post-rpc interceptor for get_goldengate_connection_assignment Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_get_odb_subnet_with_metadata` - interceptor in new development instead of the `post_get_odb_subnet` interceptor. - When both interceptors are used, this `post_get_odb_subnet_with_metadata` interceptor runs after the - `post_get_odb_subnet` interceptor. The (possibly modified) response returned by - `post_get_odb_subnet` will be passed to - `post_get_odb_subnet_with_metadata`. + We recommend only using this `post_get_goldengate_connection_assignment_with_metadata` + interceptor in new development instead of the `post_get_goldengate_connection_assignment` interceptor. + When both interceptors are used, this `post_get_goldengate_connection_assignment_with_metadata` interceptor runs after the + `post_get_goldengate_connection_assignment` interceptor. The (possibly modified) response returned by + `post_get_goldengate_connection_assignment` will be passed to + `post_get_goldengate_connection_assignment_with_metadata`. """ return response, metadata - def pre_get_pluggable_database( + def pre_get_goldengate_connection_type( self, - request: pluggable_database.GetPluggableDatabaseRequest, + request: goldengate_connection_type.GetGoldengateConnectionTypeRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - pluggable_database.GetPluggableDatabaseRequest, + goldengate_connection_type.GetGoldengateConnectionTypeRequest, Sequence[Tuple[str, Union[str, bytes]]], ]: - """Pre-rpc interceptor for get_pluggable_database + """Pre-rpc interceptor for get_goldengate_connection_type Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_get_pluggable_database( - self, response: pluggable_database.PluggableDatabase - ) -> pluggable_database.PluggableDatabase: - """Post-rpc interceptor for get_pluggable_database + def post_get_goldengate_connection_type( + self, response: goldengate_connection_type.GoldengateConnectionType + ) -> goldengate_connection_type.GoldengateConnectionType: + """Post-rpc interceptor for get_goldengate_connection_type - DEPRECATED. Please use the `post_get_pluggable_database_with_metadata` + DEPRECATED. Please use the `post_get_goldengate_connection_type_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_get_pluggable_database` interceptor runs - before the `post_get_pluggable_database_with_metadata` interceptor. + it is returned to user code. This `post_get_goldengate_connection_type` interceptor runs + before the `post_get_goldengate_connection_type_with_metadata` interceptor. """ return response - def post_get_pluggable_database_with_metadata( + def post_get_goldengate_connection_type_with_metadata( self, - response: pluggable_database.PluggableDatabase, + response: goldengate_connection_type.GoldengateConnectionType, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - pluggable_database.PluggableDatabase, Sequence[Tuple[str, Union[str, bytes]]] + goldengate_connection_type.GoldengateConnectionType, + Sequence[Tuple[str, Union[str, bytes]]], ]: - """Post-rpc interceptor for get_pluggable_database + """Post-rpc interceptor for get_goldengate_connection_type Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_get_pluggable_database_with_metadata` - interceptor in new development instead of the `post_get_pluggable_database` interceptor. - When both interceptors are used, this `post_get_pluggable_database_with_metadata` interceptor runs after the - `post_get_pluggable_database` interceptor. The (possibly modified) response returned by - `post_get_pluggable_database` will be passed to - `post_get_pluggable_database_with_metadata`. + We recommend only using this `post_get_goldengate_connection_type_with_metadata` + interceptor in new development instead of the `post_get_goldengate_connection_type` interceptor. + When both interceptors are used, this `post_get_goldengate_connection_type_with_metadata` interceptor runs after the + `post_get_goldengate_connection_type` interceptor. The (possibly modified) response returned by + `post_get_goldengate_connection_type` will be passed to + `post_get_goldengate_connection_type_with_metadata`. """ return response, metadata - def pre_list_autonomous_database_backups( + def pre_get_goldengate_deployment( self, - request: oracledatabase.ListAutonomousDatabaseBackupsRequest, + request: goldengate_deployment.GetGoldengateDeploymentRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - oracledatabase.ListAutonomousDatabaseBackupsRequest, + goldengate_deployment.GetGoldengateDeploymentRequest, Sequence[Tuple[str, Union[str, bytes]]], ]: - """Pre-rpc interceptor for list_autonomous_database_backups + """Pre-rpc interceptor for get_goldengate_deployment Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_list_autonomous_database_backups( - self, response: oracledatabase.ListAutonomousDatabaseBackupsResponse - ) -> oracledatabase.ListAutonomousDatabaseBackupsResponse: - """Post-rpc interceptor for list_autonomous_database_backups + def post_get_goldengate_deployment( + self, response: goldengate_deployment.GoldengateDeployment + ) -> goldengate_deployment.GoldengateDeployment: + """Post-rpc interceptor for get_goldengate_deployment - DEPRECATED. Please use the `post_list_autonomous_database_backups_with_metadata` + DEPRECATED. Please use the `post_get_goldengate_deployment_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_list_autonomous_database_backups` interceptor runs - before the `post_list_autonomous_database_backups_with_metadata` interceptor. + it is returned to user code. This `post_get_goldengate_deployment` interceptor runs + before the `post_get_goldengate_deployment_with_metadata` interceptor. """ return response - def post_list_autonomous_database_backups_with_metadata( + def post_get_goldengate_deployment_with_metadata( self, - response: oracledatabase.ListAutonomousDatabaseBackupsResponse, + response: goldengate_deployment.GoldengateDeployment, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - oracledatabase.ListAutonomousDatabaseBackupsResponse, + goldengate_deployment.GoldengateDeployment, Sequence[Tuple[str, Union[str, bytes]]], ]: - """Post-rpc interceptor for list_autonomous_database_backups + """Post-rpc interceptor for get_goldengate_deployment Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_list_autonomous_database_backups_with_metadata` - interceptor in new development instead of the `post_list_autonomous_database_backups` interceptor. - When both interceptors are used, this `post_list_autonomous_database_backups_with_metadata` interceptor runs after the - `post_list_autonomous_database_backups` interceptor. The (possibly modified) response returned by - `post_list_autonomous_database_backups` will be passed to - `post_list_autonomous_database_backups_with_metadata`. + We recommend only using this `post_get_goldengate_deployment_with_metadata` + interceptor in new development instead of the `post_get_goldengate_deployment` interceptor. + When both interceptors are used, this `post_get_goldengate_deployment_with_metadata` interceptor runs after the + `post_get_goldengate_deployment` interceptor. The (possibly modified) response returned by + `post_get_goldengate_deployment` will be passed to + `post_get_goldengate_deployment_with_metadata`. """ return response, metadata - def pre_list_autonomous_database_character_sets( + def pre_get_goldengate_deployment_environment( self, - request: oracledatabase.ListAutonomousDatabaseCharacterSetsRequest, + request: goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - oracledatabase.ListAutonomousDatabaseCharacterSetsRequest, + goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest, Sequence[Tuple[str, Union[str, bytes]]], ]: - """Pre-rpc interceptor for list_autonomous_database_character_sets + """Pre-rpc interceptor for get_goldengate_deployment_environment Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_list_autonomous_database_character_sets( - self, response: oracledatabase.ListAutonomousDatabaseCharacterSetsResponse - ) -> oracledatabase.ListAutonomousDatabaseCharacterSetsResponse: - """Post-rpc interceptor for list_autonomous_database_character_sets + def post_get_goldengate_deployment_environment( + self, + response: goldengate_deployment_environment.GoldengateDeploymentEnvironment, + ) -> goldengate_deployment_environment.GoldengateDeploymentEnvironment: + """Post-rpc interceptor for get_goldengate_deployment_environment - DEPRECATED. Please use the `post_list_autonomous_database_character_sets_with_metadata` + DEPRECATED. Please use the `post_get_goldengate_deployment_environment_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_list_autonomous_database_character_sets` interceptor runs - before the `post_list_autonomous_database_character_sets_with_metadata` interceptor. + it is returned to user code. This `post_get_goldengate_deployment_environment` interceptor runs + before the `post_get_goldengate_deployment_environment_with_metadata` interceptor. """ return response - def post_list_autonomous_database_character_sets_with_metadata( + def post_get_goldengate_deployment_environment_with_metadata( self, - response: oracledatabase.ListAutonomousDatabaseCharacterSetsResponse, + response: goldengate_deployment_environment.GoldengateDeploymentEnvironment, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - oracledatabase.ListAutonomousDatabaseCharacterSetsResponse, + goldengate_deployment_environment.GoldengateDeploymentEnvironment, Sequence[Tuple[str, Union[str, bytes]]], ]: - """Post-rpc interceptor for list_autonomous_database_character_sets + """Post-rpc interceptor for get_goldengate_deployment_environment Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_list_autonomous_database_character_sets_with_metadata` - interceptor in new development instead of the `post_list_autonomous_database_character_sets` interceptor. - When both interceptors are used, this `post_list_autonomous_database_character_sets_with_metadata` interceptor runs after the - `post_list_autonomous_database_character_sets` interceptor. The (possibly modified) response returned by - `post_list_autonomous_database_character_sets` will be passed to - `post_list_autonomous_database_character_sets_with_metadata`. + We recommend only using this `post_get_goldengate_deployment_environment_with_metadata` + interceptor in new development instead of the `post_get_goldengate_deployment_environment` interceptor. + When both interceptors are used, this `post_get_goldengate_deployment_environment_with_metadata` interceptor runs after the + `post_get_goldengate_deployment_environment` interceptor. The (possibly modified) response returned by + `post_get_goldengate_deployment_environment` will be passed to + `post_get_goldengate_deployment_environment_with_metadata`. """ return response, metadata - def pre_list_autonomous_databases( + def pre_get_goldengate_deployment_type( self, - request: oracledatabase.ListAutonomousDatabasesRequest, + request: goldengate_deployment_type.GetGoldengateDeploymentTypeRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - oracledatabase.ListAutonomousDatabasesRequest, + goldengate_deployment_type.GetGoldengateDeploymentTypeRequest, Sequence[Tuple[str, Union[str, bytes]]], ]: - """Pre-rpc interceptor for list_autonomous_databases + """Pre-rpc interceptor for get_goldengate_deployment_type Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_list_autonomous_databases( - self, response: oracledatabase.ListAutonomousDatabasesResponse - ) -> oracledatabase.ListAutonomousDatabasesResponse: - """Post-rpc interceptor for list_autonomous_databases + def post_get_goldengate_deployment_type( + self, response: goldengate_deployment_type.GoldengateDeploymentType + ) -> goldengate_deployment_type.GoldengateDeploymentType: + """Post-rpc interceptor for get_goldengate_deployment_type - DEPRECATED. Please use the `post_list_autonomous_databases_with_metadata` + DEPRECATED. Please use the `post_get_goldengate_deployment_type_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_list_autonomous_databases` interceptor runs - before the `post_list_autonomous_databases_with_metadata` interceptor. + it is returned to user code. This `post_get_goldengate_deployment_type` interceptor runs + before the `post_get_goldengate_deployment_type_with_metadata` interceptor. """ return response - def post_list_autonomous_databases_with_metadata( + def post_get_goldengate_deployment_type_with_metadata( self, - response: oracledatabase.ListAutonomousDatabasesResponse, + response: goldengate_deployment_type.GoldengateDeploymentType, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - oracledatabase.ListAutonomousDatabasesResponse, + goldengate_deployment_type.GoldengateDeploymentType, Sequence[Tuple[str, Union[str, bytes]]], ]: - """Post-rpc interceptor for list_autonomous_databases + """Post-rpc interceptor for get_goldengate_deployment_type Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_list_autonomous_databases_with_metadata` - interceptor in new development instead of the `post_list_autonomous_databases` interceptor. - When both interceptors are used, this `post_list_autonomous_databases_with_metadata` interceptor runs after the - `post_list_autonomous_databases` interceptor. The (possibly modified) response returned by - `post_list_autonomous_databases` will be passed to - `post_list_autonomous_databases_with_metadata`. + We recommend only using this `post_get_goldengate_deployment_type_with_metadata` + interceptor in new development instead of the `post_get_goldengate_deployment_type` interceptor. + When both interceptors are used, this `post_get_goldengate_deployment_type_with_metadata` interceptor runs after the + `post_get_goldengate_deployment_type` interceptor. The (possibly modified) response returned by + `post_get_goldengate_deployment_type` will be passed to + `post_get_goldengate_deployment_type_with_metadata`. """ return response, metadata - def pre_list_autonomous_db_versions( + def pre_get_goldengate_deployment_version( self, - request: oracledatabase.ListAutonomousDbVersionsRequest, + request: goldengate_deployment_version.GetGoldengateDeploymentVersionRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - oracledatabase.ListAutonomousDbVersionsRequest, + goldengate_deployment_version.GetGoldengateDeploymentVersionRequest, Sequence[Tuple[str, Union[str, bytes]]], ]: - """Pre-rpc interceptor for list_autonomous_db_versions + """Pre-rpc interceptor for get_goldengate_deployment_version Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_list_autonomous_db_versions( - self, response: oracledatabase.ListAutonomousDbVersionsResponse - ) -> oracledatabase.ListAutonomousDbVersionsResponse: - """Post-rpc interceptor for list_autonomous_db_versions + def post_get_goldengate_deployment_version( + self, response: goldengate_deployment_version.GoldengateDeploymentVersion + ) -> goldengate_deployment_version.GoldengateDeploymentVersion: + """Post-rpc interceptor for get_goldengate_deployment_version - DEPRECATED. Please use the `post_list_autonomous_db_versions_with_metadata` + DEPRECATED. Please use the `post_get_goldengate_deployment_version_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_list_autonomous_db_versions` interceptor runs - before the `post_list_autonomous_db_versions_with_metadata` interceptor. + it is returned to user code. This `post_get_goldengate_deployment_version` interceptor runs + before the `post_get_goldengate_deployment_version_with_metadata` interceptor. """ return response - def post_list_autonomous_db_versions_with_metadata( + def post_get_goldengate_deployment_version_with_metadata( self, - response: oracledatabase.ListAutonomousDbVersionsResponse, + response: goldengate_deployment_version.GoldengateDeploymentVersion, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - oracledatabase.ListAutonomousDbVersionsResponse, + goldengate_deployment_version.GoldengateDeploymentVersion, Sequence[Tuple[str, Union[str, bytes]]], ]: - """Post-rpc interceptor for list_autonomous_db_versions + """Post-rpc interceptor for get_goldengate_deployment_version Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_list_autonomous_db_versions_with_metadata` - interceptor in new development instead of the `post_list_autonomous_db_versions` interceptor. - When both interceptors are used, this `post_list_autonomous_db_versions_with_metadata` interceptor runs after the - `post_list_autonomous_db_versions` interceptor. The (possibly modified) response returned by - `post_list_autonomous_db_versions` will be passed to - `post_list_autonomous_db_versions_with_metadata`. + We recommend only using this `post_get_goldengate_deployment_version_with_metadata` + interceptor in new development instead of the `post_get_goldengate_deployment_version` interceptor. + When both interceptors are used, this `post_get_goldengate_deployment_version_with_metadata` interceptor runs after the + `post_get_goldengate_deployment_version` interceptor. The (possibly modified) response returned by + `post_get_goldengate_deployment_version` will be passed to + `post_get_goldengate_deployment_version_with_metadata`. """ return response, metadata - def pre_list_cloud_exadata_infrastructures( + def pre_get_odb_network( self, - request: oracledatabase.ListCloudExadataInfrastructuresRequest, + request: odb_network.GetOdbNetworkRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - oracledatabase.ListCloudExadataInfrastructuresRequest, - Sequence[Tuple[str, Union[str, bytes]]], + odb_network.GetOdbNetworkRequest, Sequence[Tuple[str, Union[str, bytes]]] ]: - """Pre-rpc interceptor for list_cloud_exadata_infrastructures + """Pre-rpc interceptor for get_odb_network Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_list_cloud_exadata_infrastructures( - self, response: oracledatabase.ListCloudExadataInfrastructuresResponse - ) -> oracledatabase.ListCloudExadataInfrastructuresResponse: - """Post-rpc interceptor for list_cloud_exadata_infrastructures + def post_get_odb_network( + self, response: odb_network.OdbNetwork + ) -> odb_network.OdbNetwork: + """Post-rpc interceptor for get_odb_network - DEPRECATED. Please use the `post_list_cloud_exadata_infrastructures_with_metadata` + DEPRECATED. Please use the `post_get_odb_network_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_list_cloud_exadata_infrastructures` interceptor runs - before the `post_list_cloud_exadata_infrastructures_with_metadata` interceptor. + it is returned to user code. This `post_get_odb_network` interceptor runs + before the `post_get_odb_network_with_metadata` interceptor. """ return response - def post_list_cloud_exadata_infrastructures_with_metadata( + def post_get_odb_network_with_metadata( self, - response: oracledatabase.ListCloudExadataInfrastructuresResponse, + response: odb_network.OdbNetwork, metadata: Sequence[Tuple[str, Union[str, bytes]]], - ) -> Tuple[ - oracledatabase.ListCloudExadataInfrastructuresResponse, - Sequence[Tuple[str, Union[str, bytes]]], - ]: - """Post-rpc interceptor for list_cloud_exadata_infrastructures + ) -> Tuple[odb_network.OdbNetwork, Sequence[Tuple[str, Union[str, bytes]]]]: + """Post-rpc interceptor for get_odb_network Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_list_cloud_exadata_infrastructures_with_metadata` - interceptor in new development instead of the `post_list_cloud_exadata_infrastructures` interceptor. - When both interceptors are used, this `post_list_cloud_exadata_infrastructures_with_metadata` interceptor runs after the - `post_list_cloud_exadata_infrastructures` interceptor. The (possibly modified) response returned by - `post_list_cloud_exadata_infrastructures` will be passed to - `post_list_cloud_exadata_infrastructures_with_metadata`. + We recommend only using this `post_get_odb_network_with_metadata` + interceptor in new development instead of the `post_get_odb_network` interceptor. + When both interceptors are used, this `post_get_odb_network_with_metadata` interceptor runs after the + `post_get_odb_network` interceptor. The (possibly modified) response returned by + `post_get_odb_network` will be passed to + `post_get_odb_network_with_metadata`. """ return response, metadata - def pre_list_cloud_vm_clusters( + def pre_get_odb_subnet( self, - request: oracledatabase.ListCloudVmClustersRequest, + request: odb_subnet.GetOdbSubnetRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], - ) -> Tuple[ - oracledatabase.ListCloudVmClustersRequest, - Sequence[Tuple[str, Union[str, bytes]]], - ]: - """Pre-rpc interceptor for list_cloud_vm_clusters + ) -> Tuple[odb_subnet.GetOdbSubnetRequest, Sequence[Tuple[str, Union[str, bytes]]]]: + """Pre-rpc interceptor for get_odb_subnet Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_list_cloud_vm_clusters( - self, response: oracledatabase.ListCloudVmClustersResponse - ) -> oracledatabase.ListCloudVmClustersResponse: - """Post-rpc interceptor for list_cloud_vm_clusters + def post_get_odb_subnet( + self, response: odb_subnet.OdbSubnet + ) -> odb_subnet.OdbSubnet: + """Post-rpc interceptor for get_odb_subnet - DEPRECATED. Please use the `post_list_cloud_vm_clusters_with_metadata` + DEPRECATED. Please use the `post_get_odb_subnet_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_list_cloud_vm_clusters` interceptor runs - before the `post_list_cloud_vm_clusters_with_metadata` interceptor. + it is returned to user code. This `post_get_odb_subnet` interceptor runs + before the `post_get_odb_subnet_with_metadata` interceptor. """ return response - def post_list_cloud_vm_clusters_with_metadata( + def post_get_odb_subnet_with_metadata( self, - response: oracledatabase.ListCloudVmClustersResponse, + response: odb_subnet.OdbSubnet, metadata: Sequence[Tuple[str, Union[str, bytes]]], - ) -> Tuple[ - oracledatabase.ListCloudVmClustersResponse, - Sequence[Tuple[str, Union[str, bytes]]], - ]: - """Post-rpc interceptor for list_cloud_vm_clusters + ) -> Tuple[odb_subnet.OdbSubnet, Sequence[Tuple[str, Union[str, bytes]]]]: + """Post-rpc interceptor for get_odb_subnet Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_list_cloud_vm_clusters_with_metadata` - interceptor in new development instead of the `post_list_cloud_vm_clusters` interceptor. - When both interceptors are used, this `post_list_cloud_vm_clusters_with_metadata` interceptor runs after the - `post_list_cloud_vm_clusters` interceptor. The (possibly modified) response returned by - `post_list_cloud_vm_clusters` will be passed to - `post_list_cloud_vm_clusters_with_metadata`. + We recommend only using this `post_get_odb_subnet_with_metadata` + interceptor in new development instead of the `post_get_odb_subnet` interceptor. + When both interceptors are used, this `post_get_odb_subnet_with_metadata` interceptor runs after the + `post_get_odb_subnet` interceptor. The (possibly modified) response returned by + `post_get_odb_subnet` will be passed to + `post_get_odb_subnet_with_metadata`. """ return response, metadata - def pre_list_database_character_sets( + def pre_get_pluggable_database( self, - request: database_character_set.ListDatabaseCharacterSetsRequest, + request: pluggable_database.GetPluggableDatabaseRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - database_character_set.ListDatabaseCharacterSetsRequest, + pluggable_database.GetPluggableDatabaseRequest, Sequence[Tuple[str, Union[str, bytes]]], ]: - """Pre-rpc interceptor for list_database_character_sets + """Pre-rpc interceptor for get_pluggable_database Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_list_database_character_sets( - self, response: database_character_set.ListDatabaseCharacterSetsResponse - ) -> database_character_set.ListDatabaseCharacterSetsResponse: - """Post-rpc interceptor for list_database_character_sets + def post_get_pluggable_database( + self, response: pluggable_database.PluggableDatabase + ) -> pluggable_database.PluggableDatabase: + """Post-rpc interceptor for get_pluggable_database - DEPRECATED. Please use the `post_list_database_character_sets_with_metadata` + DEPRECATED. Please use the `post_get_pluggable_database_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_list_database_character_sets` interceptor runs - before the `post_list_database_character_sets_with_metadata` interceptor. + it is returned to user code. This `post_get_pluggable_database` interceptor runs + before the `post_get_pluggable_database_with_metadata` interceptor. """ return response - def post_list_database_character_sets_with_metadata( + def post_get_pluggable_database_with_metadata( self, - response: database_character_set.ListDatabaseCharacterSetsResponse, + response: pluggable_database.PluggableDatabase, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - database_character_set.ListDatabaseCharacterSetsResponse, - Sequence[Tuple[str, Union[str, bytes]]], + pluggable_database.PluggableDatabase, Sequence[Tuple[str, Union[str, bytes]]] ]: - """Post-rpc interceptor for list_database_character_sets + """Post-rpc interceptor for get_pluggable_database Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_list_database_character_sets_with_metadata` - interceptor in new development instead of the `post_list_database_character_sets` interceptor. - When both interceptors are used, this `post_list_database_character_sets_with_metadata` interceptor runs after the - `post_list_database_character_sets` interceptor. The (possibly modified) response returned by - `post_list_database_character_sets` will be passed to - `post_list_database_character_sets_with_metadata`. + We recommend only using this `post_get_pluggable_database_with_metadata` + interceptor in new development instead of the `post_get_pluggable_database` interceptor. + When both interceptors are used, this `post_get_pluggable_database_with_metadata` interceptor runs after the + `post_get_pluggable_database` interceptor. The (possibly modified) response returned by + `post_get_pluggable_database` will be passed to + `post_get_pluggable_database_with_metadata`. """ return response, metadata - def pre_list_databases( + def pre_list_autonomous_database_backups( self, - request: database.ListDatabasesRequest, + request: oracledatabase.ListAutonomousDatabaseBackupsRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], - ) -> Tuple[database.ListDatabasesRequest, Sequence[Tuple[str, Union[str, bytes]]]]: - """Pre-rpc interceptor for list_databases + ) -> Tuple[ + oracledatabase.ListAutonomousDatabaseBackupsRequest, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Pre-rpc interceptor for list_autonomous_database_backups Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_list_databases( - self, response: database.ListDatabasesResponse - ) -> database.ListDatabasesResponse: - """Post-rpc interceptor for list_databases + def post_list_autonomous_database_backups( + self, response: oracledatabase.ListAutonomousDatabaseBackupsResponse + ) -> oracledatabase.ListAutonomousDatabaseBackupsResponse: + """Post-rpc interceptor for list_autonomous_database_backups - DEPRECATED. Please use the `post_list_databases_with_metadata` + DEPRECATED. Please use the `post_list_autonomous_database_backups_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_list_databases` interceptor runs - before the `post_list_databases_with_metadata` interceptor. + it is returned to user code. This `post_list_autonomous_database_backups` interceptor runs + before the `post_list_autonomous_database_backups_with_metadata` interceptor. """ return response - def post_list_databases_with_metadata( + def post_list_autonomous_database_backups_with_metadata( self, - response: database.ListDatabasesResponse, + response: oracledatabase.ListAutonomousDatabaseBackupsResponse, metadata: Sequence[Tuple[str, Union[str, bytes]]], - ) -> Tuple[database.ListDatabasesResponse, Sequence[Tuple[str, Union[str, bytes]]]]: - """Post-rpc interceptor for list_databases + ) -> Tuple[ + oracledatabase.ListAutonomousDatabaseBackupsResponse, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Post-rpc interceptor for list_autonomous_database_backups Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_list_databases_with_metadata` - interceptor in new development instead of the `post_list_databases` interceptor. - When both interceptors are used, this `post_list_databases_with_metadata` interceptor runs after the - `post_list_databases` interceptor. The (possibly modified) response returned by - `post_list_databases` will be passed to - `post_list_databases_with_metadata`. + We recommend only using this `post_list_autonomous_database_backups_with_metadata` + interceptor in new development instead of the `post_list_autonomous_database_backups` interceptor. + When both interceptors are used, this `post_list_autonomous_database_backups_with_metadata` interceptor runs after the + `post_list_autonomous_database_backups` interceptor. The (possibly modified) response returned by + `post_list_autonomous_database_backups` will be passed to + `post_list_autonomous_database_backups_with_metadata`. """ return response, metadata - def pre_list_db_nodes( + def pre_list_autonomous_database_character_sets( self, - request: oracledatabase.ListDbNodesRequest, + request: oracledatabase.ListAutonomousDatabaseCharacterSetsRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - oracledatabase.ListDbNodesRequest, Sequence[Tuple[str, Union[str, bytes]]] + oracledatabase.ListAutonomousDatabaseCharacterSetsRequest, + Sequence[Tuple[str, Union[str, bytes]]], ]: - """Pre-rpc interceptor for list_db_nodes + """Pre-rpc interceptor for list_autonomous_database_character_sets Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_list_db_nodes( - self, response: oracledatabase.ListDbNodesResponse - ) -> oracledatabase.ListDbNodesResponse: - """Post-rpc interceptor for list_db_nodes + def post_list_autonomous_database_character_sets( + self, response: oracledatabase.ListAutonomousDatabaseCharacterSetsResponse + ) -> oracledatabase.ListAutonomousDatabaseCharacterSetsResponse: + """Post-rpc interceptor for list_autonomous_database_character_sets - DEPRECATED. Please use the `post_list_db_nodes_with_metadata` + DEPRECATED. Please use the `post_list_autonomous_database_character_sets_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_list_db_nodes` interceptor runs - before the `post_list_db_nodes_with_metadata` interceptor. + it is returned to user code. This `post_list_autonomous_database_character_sets` interceptor runs + before the `post_list_autonomous_database_character_sets_with_metadata` interceptor. """ return response - def post_list_db_nodes_with_metadata( + def post_list_autonomous_database_character_sets_with_metadata( self, - response: oracledatabase.ListDbNodesResponse, + response: oracledatabase.ListAutonomousDatabaseCharacterSetsResponse, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - oracledatabase.ListDbNodesResponse, Sequence[Tuple[str, Union[str, bytes]]] + oracledatabase.ListAutonomousDatabaseCharacterSetsResponse, + Sequence[Tuple[str, Union[str, bytes]]], ]: - """Post-rpc interceptor for list_db_nodes + """Post-rpc interceptor for list_autonomous_database_character_sets Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_list_db_nodes_with_metadata` - interceptor in new development instead of the `post_list_db_nodes` interceptor. - When both interceptors are used, this `post_list_db_nodes_with_metadata` interceptor runs after the - `post_list_db_nodes` interceptor. The (possibly modified) response returned by - `post_list_db_nodes` will be passed to - `post_list_db_nodes_with_metadata`. + We recommend only using this `post_list_autonomous_database_character_sets_with_metadata` + interceptor in new development instead of the `post_list_autonomous_database_character_sets` interceptor. + When both interceptors are used, this `post_list_autonomous_database_character_sets_with_metadata` interceptor runs after the + `post_list_autonomous_database_character_sets` interceptor. The (possibly modified) response returned by + `post_list_autonomous_database_character_sets` will be passed to + `post_list_autonomous_database_character_sets_with_metadata`. """ return response, metadata - def pre_list_db_servers( + def pre_list_autonomous_databases( self, - request: oracledatabase.ListDbServersRequest, + request: oracledatabase.ListAutonomousDatabasesRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - oracledatabase.ListDbServersRequest, Sequence[Tuple[str, Union[str, bytes]]] + oracledatabase.ListAutonomousDatabasesRequest, + Sequence[Tuple[str, Union[str, bytes]]], ]: - """Pre-rpc interceptor for list_db_servers + """Pre-rpc interceptor for list_autonomous_databases Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_list_db_servers( - self, response: oracledatabase.ListDbServersResponse - ) -> oracledatabase.ListDbServersResponse: - """Post-rpc interceptor for list_db_servers - - DEPRECATED. Please use the `post_list_db_servers_with_metadata` + def post_list_autonomous_databases( + self, response: oracledatabase.ListAutonomousDatabasesResponse + ) -> oracledatabase.ListAutonomousDatabasesResponse: + """Post-rpc interceptor for list_autonomous_databases + + DEPRECATED. Please use the `post_list_autonomous_databases_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_list_db_servers` interceptor runs - before the `post_list_db_servers_with_metadata` interceptor. + it is returned to user code. This `post_list_autonomous_databases` interceptor runs + before the `post_list_autonomous_databases_with_metadata` interceptor. """ return response - def post_list_db_servers_with_metadata( + def post_list_autonomous_databases_with_metadata( self, - response: oracledatabase.ListDbServersResponse, + response: oracledatabase.ListAutonomousDatabasesResponse, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - oracledatabase.ListDbServersResponse, Sequence[Tuple[str, Union[str, bytes]]] + oracledatabase.ListAutonomousDatabasesResponse, + Sequence[Tuple[str, Union[str, bytes]]], ]: - """Post-rpc interceptor for list_db_servers + """Post-rpc interceptor for list_autonomous_databases Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_list_db_servers_with_metadata` - interceptor in new development instead of the `post_list_db_servers` interceptor. - When both interceptors are used, this `post_list_db_servers_with_metadata` interceptor runs after the - `post_list_db_servers` interceptor. The (possibly modified) response returned by - `post_list_db_servers` will be passed to - `post_list_db_servers_with_metadata`. + We recommend only using this `post_list_autonomous_databases_with_metadata` + interceptor in new development instead of the `post_list_autonomous_databases` interceptor. + When both interceptors are used, this `post_list_autonomous_databases_with_metadata` interceptor runs after the + `post_list_autonomous_databases` interceptor. The (possibly modified) response returned by + `post_list_autonomous_databases` will be passed to + `post_list_autonomous_databases_with_metadata`. """ return response, metadata - def pre_list_db_system_initial_storage_sizes( + def pre_list_autonomous_db_versions( self, - request: db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest, + request: oracledatabase.ListAutonomousDbVersionsRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest, + oracledatabase.ListAutonomousDbVersionsRequest, Sequence[Tuple[str, Union[str, bytes]]], ]: - """Pre-rpc interceptor for list_db_system_initial_storage_sizes + """Pre-rpc interceptor for list_autonomous_db_versions Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_list_db_system_initial_storage_sizes( - self, - response: db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse, - ) -> db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse: - """Post-rpc interceptor for list_db_system_initial_storage_sizes + def post_list_autonomous_db_versions( + self, response: oracledatabase.ListAutonomousDbVersionsResponse + ) -> oracledatabase.ListAutonomousDbVersionsResponse: + """Post-rpc interceptor for list_autonomous_db_versions - DEPRECATED. Please use the `post_list_db_system_initial_storage_sizes_with_metadata` + DEPRECATED. Please use the `post_list_autonomous_db_versions_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_list_db_system_initial_storage_sizes` interceptor runs - before the `post_list_db_system_initial_storage_sizes_with_metadata` interceptor. + it is returned to user code. This `post_list_autonomous_db_versions` interceptor runs + before the `post_list_autonomous_db_versions_with_metadata` interceptor. """ return response - def post_list_db_system_initial_storage_sizes_with_metadata( + def post_list_autonomous_db_versions_with_metadata( self, - response: db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse, + response: oracledatabase.ListAutonomousDbVersionsResponse, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse, + oracledatabase.ListAutonomousDbVersionsResponse, Sequence[Tuple[str, Union[str, bytes]]], ]: - """Post-rpc interceptor for list_db_system_initial_storage_sizes + """Post-rpc interceptor for list_autonomous_db_versions Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_list_db_system_initial_storage_sizes_with_metadata` - interceptor in new development instead of the `post_list_db_system_initial_storage_sizes` interceptor. - When both interceptors are used, this `post_list_db_system_initial_storage_sizes_with_metadata` interceptor runs after the - `post_list_db_system_initial_storage_sizes` interceptor. The (possibly modified) response returned by - `post_list_db_system_initial_storage_sizes` will be passed to - `post_list_db_system_initial_storage_sizes_with_metadata`. + We recommend only using this `post_list_autonomous_db_versions_with_metadata` + interceptor in new development instead of the `post_list_autonomous_db_versions` interceptor. + When both interceptors are used, this `post_list_autonomous_db_versions_with_metadata` interceptor runs after the + `post_list_autonomous_db_versions` interceptor. The (possibly modified) response returned by + `post_list_autonomous_db_versions` will be passed to + `post_list_autonomous_db_versions_with_metadata`. """ return response, metadata - def pre_list_db_systems( + def pre_list_cloud_exadata_infrastructures( self, - request: db_system.ListDbSystemsRequest, + request: oracledatabase.ListCloudExadataInfrastructuresRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], - ) -> Tuple[db_system.ListDbSystemsRequest, Sequence[Tuple[str, Union[str, bytes]]]]: - """Pre-rpc interceptor for list_db_systems + ) -> Tuple[ + oracledatabase.ListCloudExadataInfrastructuresRequest, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Pre-rpc interceptor for list_cloud_exadata_infrastructures Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_list_db_systems( - self, response: db_system.ListDbSystemsResponse - ) -> db_system.ListDbSystemsResponse: - """Post-rpc interceptor for list_db_systems + def post_list_cloud_exadata_infrastructures( + self, response: oracledatabase.ListCloudExadataInfrastructuresResponse + ) -> oracledatabase.ListCloudExadataInfrastructuresResponse: + """Post-rpc interceptor for list_cloud_exadata_infrastructures - DEPRECATED. Please use the `post_list_db_systems_with_metadata` + DEPRECATED. Please use the `post_list_cloud_exadata_infrastructures_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_list_db_systems` interceptor runs - before the `post_list_db_systems_with_metadata` interceptor. + it is returned to user code. This `post_list_cloud_exadata_infrastructures` interceptor runs + before the `post_list_cloud_exadata_infrastructures_with_metadata` interceptor. """ return response - def post_list_db_systems_with_metadata( + def post_list_cloud_exadata_infrastructures_with_metadata( self, - response: db_system.ListDbSystemsResponse, + response: oracledatabase.ListCloudExadataInfrastructuresResponse, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - db_system.ListDbSystemsResponse, Sequence[Tuple[str, Union[str, bytes]]] + oracledatabase.ListCloudExadataInfrastructuresResponse, + Sequence[Tuple[str, Union[str, bytes]]], ]: - """Post-rpc interceptor for list_db_systems + """Post-rpc interceptor for list_cloud_exadata_infrastructures Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_list_db_systems_with_metadata` - interceptor in new development instead of the `post_list_db_systems` interceptor. - When both interceptors are used, this `post_list_db_systems_with_metadata` interceptor runs after the - `post_list_db_systems` interceptor. The (possibly modified) response returned by - `post_list_db_systems` will be passed to - `post_list_db_systems_with_metadata`. + We recommend only using this `post_list_cloud_exadata_infrastructures_with_metadata` + interceptor in new development instead of the `post_list_cloud_exadata_infrastructures` interceptor. + When both interceptors are used, this `post_list_cloud_exadata_infrastructures_with_metadata` interceptor runs after the + `post_list_cloud_exadata_infrastructures` interceptor. The (possibly modified) response returned by + `post_list_cloud_exadata_infrastructures` will be passed to + `post_list_cloud_exadata_infrastructures_with_metadata`. """ return response, metadata - def pre_list_db_system_shapes( + def pre_list_cloud_vm_clusters( self, - request: oracledatabase.ListDbSystemShapesRequest, + request: oracledatabase.ListCloudVmClustersRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - oracledatabase.ListDbSystemShapesRequest, + oracledatabase.ListCloudVmClustersRequest, Sequence[Tuple[str, Union[str, bytes]]], ]: - """Pre-rpc interceptor for list_db_system_shapes + """Pre-rpc interceptor for list_cloud_vm_clusters Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_list_db_system_shapes( - self, response: oracledatabase.ListDbSystemShapesResponse - ) -> oracledatabase.ListDbSystemShapesResponse: - """Post-rpc interceptor for list_db_system_shapes + def post_list_cloud_vm_clusters( + self, response: oracledatabase.ListCloudVmClustersResponse + ) -> oracledatabase.ListCloudVmClustersResponse: + """Post-rpc interceptor for list_cloud_vm_clusters - DEPRECATED. Please use the `post_list_db_system_shapes_with_metadata` + DEPRECATED. Please use the `post_list_cloud_vm_clusters_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_list_db_system_shapes` interceptor runs - before the `post_list_db_system_shapes_with_metadata` interceptor. + it is returned to user code. This `post_list_cloud_vm_clusters` interceptor runs + before the `post_list_cloud_vm_clusters_with_metadata` interceptor. """ return response - def post_list_db_system_shapes_with_metadata( + def post_list_cloud_vm_clusters_with_metadata( self, - response: oracledatabase.ListDbSystemShapesResponse, + response: oracledatabase.ListCloudVmClustersResponse, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - oracledatabase.ListDbSystemShapesResponse, + oracledatabase.ListCloudVmClustersResponse, Sequence[Tuple[str, Union[str, bytes]]], ]: - """Post-rpc interceptor for list_db_system_shapes + """Post-rpc interceptor for list_cloud_vm_clusters Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_list_db_system_shapes_with_metadata` - interceptor in new development instead of the `post_list_db_system_shapes` interceptor. - When both interceptors are used, this `post_list_db_system_shapes_with_metadata` interceptor runs after the - `post_list_db_system_shapes` interceptor. The (possibly modified) response returned by - `post_list_db_system_shapes` will be passed to - `post_list_db_system_shapes_with_metadata`. + We recommend only using this `post_list_cloud_vm_clusters_with_metadata` + interceptor in new development instead of the `post_list_cloud_vm_clusters` interceptor. + When both interceptors are used, this `post_list_cloud_vm_clusters_with_metadata` interceptor runs after the + `post_list_cloud_vm_clusters` interceptor. The (possibly modified) response returned by + `post_list_cloud_vm_clusters` will be passed to + `post_list_cloud_vm_clusters_with_metadata`. """ return response, metadata - def pre_list_db_versions( + def pre_list_database_character_sets( self, - request: db_version.ListDbVersionsRequest, + request: database_character_set.ListDatabaseCharacterSetsRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - db_version.ListDbVersionsRequest, Sequence[Tuple[str, Union[str, bytes]]] + database_character_set.ListDatabaseCharacterSetsRequest, + Sequence[Tuple[str, Union[str, bytes]]], ]: - """Pre-rpc interceptor for list_db_versions + """Pre-rpc interceptor for list_database_character_sets Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_list_db_versions( - self, response: db_version.ListDbVersionsResponse - ) -> db_version.ListDbVersionsResponse: - """Post-rpc interceptor for list_db_versions + def post_list_database_character_sets( + self, response: database_character_set.ListDatabaseCharacterSetsResponse + ) -> database_character_set.ListDatabaseCharacterSetsResponse: + """Post-rpc interceptor for list_database_character_sets - DEPRECATED. Please use the `post_list_db_versions_with_metadata` + DEPRECATED. Please use the `post_list_database_character_sets_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_list_db_versions` interceptor runs - before the `post_list_db_versions_with_metadata` interceptor. + it is returned to user code. This `post_list_database_character_sets` interceptor runs + before the `post_list_database_character_sets_with_metadata` interceptor. """ return response - def post_list_db_versions_with_metadata( + def post_list_database_character_sets_with_metadata( self, - response: db_version.ListDbVersionsResponse, + response: database_character_set.ListDatabaseCharacterSetsResponse, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - db_version.ListDbVersionsResponse, Sequence[Tuple[str, Union[str, bytes]]] + database_character_set.ListDatabaseCharacterSetsResponse, + Sequence[Tuple[str, Union[str, bytes]]], ]: - """Post-rpc interceptor for list_db_versions + """Post-rpc interceptor for list_database_character_sets Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_list_db_versions_with_metadata` - interceptor in new development instead of the `post_list_db_versions` interceptor. - When both interceptors are used, this `post_list_db_versions_with_metadata` interceptor runs after the - `post_list_db_versions` interceptor. The (possibly modified) response returned by - `post_list_db_versions` will be passed to - `post_list_db_versions_with_metadata`. + We recommend only using this `post_list_database_character_sets_with_metadata` + interceptor in new development instead of the `post_list_database_character_sets` interceptor. + When both interceptors are used, this `post_list_database_character_sets_with_metadata` interceptor runs after the + `post_list_database_character_sets` interceptor. The (possibly modified) response returned by + `post_list_database_character_sets` will be passed to + `post_list_database_character_sets_with_metadata`. """ return response, metadata - def pre_list_entitlements( + def pre_list_databases( self, - request: oracledatabase.ListEntitlementsRequest, + request: database.ListDatabasesRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], - ) -> Tuple[ - oracledatabase.ListEntitlementsRequest, Sequence[Tuple[str, Union[str, bytes]]] - ]: - """Pre-rpc interceptor for list_entitlements + ) -> Tuple[database.ListDatabasesRequest, Sequence[Tuple[str, Union[str, bytes]]]]: + """Pre-rpc interceptor for list_databases Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_list_entitlements( - self, response: oracledatabase.ListEntitlementsResponse - ) -> oracledatabase.ListEntitlementsResponse: - """Post-rpc interceptor for list_entitlements + def post_list_databases( + self, response: database.ListDatabasesResponse + ) -> database.ListDatabasesResponse: + """Post-rpc interceptor for list_databases - DEPRECATED. Please use the `post_list_entitlements_with_metadata` + DEPRECATED. Please use the `post_list_databases_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_list_entitlements` interceptor runs - before the `post_list_entitlements_with_metadata` interceptor. + it is returned to user code. This `post_list_databases` interceptor runs + before the `post_list_databases_with_metadata` interceptor. """ return response - def post_list_entitlements_with_metadata( + def post_list_databases_with_metadata( self, - response: oracledatabase.ListEntitlementsResponse, + response: database.ListDatabasesResponse, metadata: Sequence[Tuple[str, Union[str, bytes]]], - ) -> Tuple[ - oracledatabase.ListEntitlementsResponse, Sequence[Tuple[str, Union[str, bytes]]] - ]: - """Post-rpc interceptor for list_entitlements + ) -> Tuple[database.ListDatabasesResponse, Sequence[Tuple[str, Union[str, bytes]]]]: + """Post-rpc interceptor for list_databases Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_list_entitlements_with_metadata` - interceptor in new development instead of the `post_list_entitlements` interceptor. - When both interceptors are used, this `post_list_entitlements_with_metadata` interceptor runs after the - `post_list_entitlements` interceptor. The (possibly modified) response returned by - `post_list_entitlements` will be passed to - `post_list_entitlements_with_metadata`. + We recommend only using this `post_list_databases_with_metadata` + interceptor in new development instead of the `post_list_databases` interceptor. + When both interceptors are used, this `post_list_databases_with_metadata` interceptor runs after the + `post_list_databases` interceptor. The (possibly modified) response returned by + `post_list_databases` will be passed to + `post_list_databases_with_metadata`. """ return response, metadata - def pre_list_exadb_vm_clusters( + def pre_list_db_nodes( self, - request: oracledatabase.ListExadbVmClustersRequest, + request: oracledatabase.ListDbNodesRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - oracledatabase.ListExadbVmClustersRequest, - Sequence[Tuple[str, Union[str, bytes]]], + oracledatabase.ListDbNodesRequest, Sequence[Tuple[str, Union[str, bytes]]] ]: - """Pre-rpc interceptor for list_exadb_vm_clusters + """Pre-rpc interceptor for list_db_nodes Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_list_exadb_vm_clusters( - self, response: oracledatabase.ListExadbVmClustersResponse - ) -> oracledatabase.ListExadbVmClustersResponse: - """Post-rpc interceptor for list_exadb_vm_clusters + def post_list_db_nodes( + self, response: oracledatabase.ListDbNodesResponse + ) -> oracledatabase.ListDbNodesResponse: + """Post-rpc interceptor for list_db_nodes - DEPRECATED. Please use the `post_list_exadb_vm_clusters_with_metadata` + DEPRECATED. Please use the `post_list_db_nodes_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_list_exadb_vm_clusters` interceptor runs - before the `post_list_exadb_vm_clusters_with_metadata` interceptor. + it is returned to user code. This `post_list_db_nodes` interceptor runs + before the `post_list_db_nodes_with_metadata` interceptor. """ return response - def post_list_exadb_vm_clusters_with_metadata( + def post_list_db_nodes_with_metadata( self, - response: oracledatabase.ListExadbVmClustersResponse, + response: oracledatabase.ListDbNodesResponse, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - oracledatabase.ListExadbVmClustersResponse, - Sequence[Tuple[str, Union[str, bytes]]], + oracledatabase.ListDbNodesResponse, Sequence[Tuple[str, Union[str, bytes]]] ]: - """Post-rpc interceptor for list_exadb_vm_clusters + """Post-rpc interceptor for list_db_nodes Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_list_exadb_vm_clusters_with_metadata` - interceptor in new development instead of the `post_list_exadb_vm_clusters` interceptor. - When both interceptors are used, this `post_list_exadb_vm_clusters_with_metadata` interceptor runs after the - `post_list_exadb_vm_clusters` interceptor. The (possibly modified) response returned by - `post_list_exadb_vm_clusters` will be passed to - `post_list_exadb_vm_clusters_with_metadata`. + We recommend only using this `post_list_db_nodes_with_metadata` + interceptor in new development instead of the `post_list_db_nodes` interceptor. + When both interceptors are used, this `post_list_db_nodes_with_metadata` interceptor runs after the + `post_list_db_nodes` interceptor. The (possibly modified) response returned by + `post_list_db_nodes` will be passed to + `post_list_db_nodes_with_metadata`. """ return response, metadata - def pre_list_exascale_db_storage_vaults( + def pre_list_db_servers( self, - request: exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest, + request: oracledatabase.ListDbServersRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest, - Sequence[Tuple[str, Union[str, bytes]]], + oracledatabase.ListDbServersRequest, Sequence[Tuple[str, Union[str, bytes]]] ]: - """Pre-rpc interceptor for list_exascale_db_storage_vaults + """Pre-rpc interceptor for list_db_servers Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_list_exascale_db_storage_vaults( - self, response: exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse - ) -> exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse: - """Post-rpc interceptor for list_exascale_db_storage_vaults + def post_list_db_servers( + self, response: oracledatabase.ListDbServersResponse + ) -> oracledatabase.ListDbServersResponse: + """Post-rpc interceptor for list_db_servers - DEPRECATED. Please use the `post_list_exascale_db_storage_vaults_with_metadata` + DEPRECATED. Please use the `post_list_db_servers_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_list_exascale_db_storage_vaults` interceptor runs - before the `post_list_exascale_db_storage_vaults_with_metadata` interceptor. + it is returned to user code. This `post_list_db_servers` interceptor runs + before the `post_list_db_servers_with_metadata` interceptor. """ return response - def post_list_exascale_db_storage_vaults_with_metadata( + def post_list_db_servers_with_metadata( self, - response: exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse, + response: oracledatabase.ListDbServersResponse, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse, - Sequence[Tuple[str, Union[str, bytes]]], + oracledatabase.ListDbServersResponse, Sequence[Tuple[str, Union[str, bytes]]] ]: - """Post-rpc interceptor for list_exascale_db_storage_vaults + """Post-rpc interceptor for list_db_servers Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_list_exascale_db_storage_vaults_with_metadata` - interceptor in new development instead of the `post_list_exascale_db_storage_vaults` interceptor. - When both interceptors are used, this `post_list_exascale_db_storage_vaults_with_metadata` interceptor runs after the - `post_list_exascale_db_storage_vaults` interceptor. The (possibly modified) response returned by - `post_list_exascale_db_storage_vaults` will be passed to - `post_list_exascale_db_storage_vaults_with_metadata`. + We recommend only using this `post_list_db_servers_with_metadata` + interceptor in new development instead of the `post_list_db_servers` interceptor. + When both interceptors are used, this `post_list_db_servers_with_metadata` interceptor runs after the + `post_list_db_servers` interceptor. The (possibly modified) response returned by + `post_list_db_servers` will be passed to + `post_list_db_servers_with_metadata`. """ return response, metadata - def pre_list_gi_versions( + def pre_list_db_system_initial_storage_sizes( self, - request: oracledatabase.ListGiVersionsRequest, + request: db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - oracledatabase.ListGiVersionsRequest, Sequence[Tuple[str, Union[str, bytes]]] + db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest, + Sequence[Tuple[str, Union[str, bytes]]], ]: - """Pre-rpc interceptor for list_gi_versions + """Pre-rpc interceptor for list_db_system_initial_storage_sizes Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_list_gi_versions( - self, response: oracledatabase.ListGiVersionsResponse - ) -> oracledatabase.ListGiVersionsResponse: - """Post-rpc interceptor for list_gi_versions + def post_list_db_system_initial_storage_sizes( + self, + response: db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse, + ) -> db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse: + """Post-rpc interceptor for list_db_system_initial_storage_sizes - DEPRECATED. Please use the `post_list_gi_versions_with_metadata` + DEPRECATED. Please use the `post_list_db_system_initial_storage_sizes_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_list_gi_versions` interceptor runs - before the `post_list_gi_versions_with_metadata` interceptor. + it is returned to user code. This `post_list_db_system_initial_storage_sizes` interceptor runs + before the `post_list_db_system_initial_storage_sizes_with_metadata` interceptor. """ return response - def post_list_gi_versions_with_metadata( + def post_list_db_system_initial_storage_sizes_with_metadata( self, - response: oracledatabase.ListGiVersionsResponse, + response: db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - oracledatabase.ListGiVersionsResponse, Sequence[Tuple[str, Union[str, bytes]]] + db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse, + Sequence[Tuple[str, Union[str, bytes]]], ]: - """Post-rpc interceptor for list_gi_versions + """Post-rpc interceptor for list_db_system_initial_storage_sizes Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_list_gi_versions_with_metadata` - interceptor in new development instead of the `post_list_gi_versions` interceptor. - When both interceptors are used, this `post_list_gi_versions_with_metadata` interceptor runs after the - `post_list_gi_versions` interceptor. The (possibly modified) response returned by - `post_list_gi_versions` will be passed to - `post_list_gi_versions_with_metadata`. + We recommend only using this `post_list_db_system_initial_storage_sizes_with_metadata` + interceptor in new development instead of the `post_list_db_system_initial_storage_sizes` interceptor. + When both interceptors are used, this `post_list_db_system_initial_storage_sizes_with_metadata` interceptor runs after the + `post_list_db_system_initial_storage_sizes` interceptor. The (possibly modified) response returned by + `post_list_db_system_initial_storage_sizes` will be passed to + `post_list_db_system_initial_storage_sizes_with_metadata`. """ return response, metadata - def pre_list_minor_versions( + def pre_list_db_systems( self, - request: minor_version.ListMinorVersionsRequest, + request: db_system.ListDbSystemsRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], - ) -> Tuple[ - minor_version.ListMinorVersionsRequest, Sequence[Tuple[str, Union[str, bytes]]] - ]: - """Pre-rpc interceptor for list_minor_versions + ) -> Tuple[db_system.ListDbSystemsRequest, Sequence[Tuple[str, Union[str, bytes]]]]: + """Pre-rpc interceptor for list_db_systems Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_list_minor_versions( - self, response: minor_version.ListMinorVersionsResponse - ) -> minor_version.ListMinorVersionsResponse: - """Post-rpc interceptor for list_minor_versions + def post_list_db_systems( + self, response: db_system.ListDbSystemsResponse + ) -> db_system.ListDbSystemsResponse: + """Post-rpc interceptor for list_db_systems - DEPRECATED. Please use the `post_list_minor_versions_with_metadata` + DEPRECATED. Please use the `post_list_db_systems_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_list_minor_versions` interceptor runs - before the `post_list_minor_versions_with_metadata` interceptor. + it is returned to user code. This `post_list_db_systems` interceptor runs + before the `post_list_db_systems_with_metadata` interceptor. """ return response - def post_list_minor_versions_with_metadata( + def post_list_db_systems_with_metadata( self, - response: minor_version.ListMinorVersionsResponse, + response: db_system.ListDbSystemsResponse, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - minor_version.ListMinorVersionsResponse, Sequence[Tuple[str, Union[str, bytes]]] + db_system.ListDbSystemsResponse, Sequence[Tuple[str, Union[str, bytes]]] ]: - """Post-rpc interceptor for list_minor_versions + """Post-rpc interceptor for list_db_systems Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_list_minor_versions_with_metadata` - interceptor in new development instead of the `post_list_minor_versions` interceptor. - When both interceptors are used, this `post_list_minor_versions_with_metadata` interceptor runs after the - `post_list_minor_versions` interceptor. The (possibly modified) response returned by - `post_list_minor_versions` will be passed to - `post_list_minor_versions_with_metadata`. + We recommend only using this `post_list_db_systems_with_metadata` + interceptor in new development instead of the `post_list_db_systems` interceptor. + When both interceptors are used, this `post_list_db_systems_with_metadata` interceptor runs after the + `post_list_db_systems` interceptor. The (possibly modified) response returned by + `post_list_db_systems` will be passed to + `post_list_db_systems_with_metadata`. """ return response, metadata - def pre_list_odb_networks( + def pre_list_db_system_shapes( self, - request: odb_network.ListOdbNetworksRequest, + request: oracledatabase.ListDbSystemShapesRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - odb_network.ListOdbNetworksRequest, Sequence[Tuple[str, Union[str, bytes]]] + oracledatabase.ListDbSystemShapesRequest, + Sequence[Tuple[str, Union[str, bytes]]], ]: - """Pre-rpc interceptor for list_odb_networks + """Pre-rpc interceptor for list_db_system_shapes Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_list_odb_networks( - self, response: odb_network.ListOdbNetworksResponse - ) -> odb_network.ListOdbNetworksResponse: - """Post-rpc interceptor for list_odb_networks + def post_list_db_system_shapes( + self, response: oracledatabase.ListDbSystemShapesResponse + ) -> oracledatabase.ListDbSystemShapesResponse: + """Post-rpc interceptor for list_db_system_shapes - DEPRECATED. Please use the `post_list_odb_networks_with_metadata` + DEPRECATED. Please use the `post_list_db_system_shapes_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_list_odb_networks` interceptor runs - before the `post_list_odb_networks_with_metadata` interceptor. + it is returned to user code. This `post_list_db_system_shapes` interceptor runs + before the `post_list_db_system_shapes_with_metadata` interceptor. """ return response - def post_list_odb_networks_with_metadata( + def post_list_db_system_shapes_with_metadata( self, - response: odb_network.ListOdbNetworksResponse, + response: oracledatabase.ListDbSystemShapesResponse, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - odb_network.ListOdbNetworksResponse, Sequence[Tuple[str, Union[str, bytes]]] + oracledatabase.ListDbSystemShapesResponse, + Sequence[Tuple[str, Union[str, bytes]]], ]: - """Post-rpc interceptor for list_odb_networks + """Post-rpc interceptor for list_db_system_shapes Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_list_odb_networks_with_metadata` - interceptor in new development instead of the `post_list_odb_networks` interceptor. - When both interceptors are used, this `post_list_odb_networks_with_metadata` interceptor runs after the - `post_list_odb_networks` interceptor. The (possibly modified) response returned by - `post_list_odb_networks` will be passed to - `post_list_odb_networks_with_metadata`. + We recommend only using this `post_list_db_system_shapes_with_metadata` + interceptor in new development instead of the `post_list_db_system_shapes` interceptor. + When both interceptors are used, this `post_list_db_system_shapes_with_metadata` interceptor runs after the + `post_list_db_system_shapes` interceptor. The (possibly modified) response returned by + `post_list_db_system_shapes` will be passed to + `post_list_db_system_shapes_with_metadata`. """ return response, metadata - def pre_list_odb_subnets( + def pre_list_db_versions( self, - request: odb_subnet.ListOdbSubnetsRequest, + request: db_version.ListDbVersionsRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - odb_subnet.ListOdbSubnetsRequest, Sequence[Tuple[str, Union[str, bytes]]] + db_version.ListDbVersionsRequest, Sequence[Tuple[str, Union[str, bytes]]] ]: - """Pre-rpc interceptor for list_odb_subnets + """Pre-rpc interceptor for list_db_versions Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_list_odb_subnets( - self, response: odb_subnet.ListOdbSubnetsResponse - ) -> odb_subnet.ListOdbSubnetsResponse: - """Post-rpc interceptor for list_odb_subnets + def post_list_db_versions( + self, response: db_version.ListDbVersionsResponse + ) -> db_version.ListDbVersionsResponse: + """Post-rpc interceptor for list_db_versions - DEPRECATED. Please use the `post_list_odb_subnets_with_metadata` + DEPRECATED. Please use the `post_list_db_versions_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_list_odb_subnets` interceptor runs - before the `post_list_odb_subnets_with_metadata` interceptor. + it is returned to user code. This `post_list_db_versions` interceptor runs + before the `post_list_db_versions_with_metadata` interceptor. """ return response - def post_list_odb_subnets_with_metadata( + def post_list_db_versions_with_metadata( self, - response: odb_subnet.ListOdbSubnetsResponse, + response: db_version.ListDbVersionsResponse, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - odb_subnet.ListOdbSubnetsResponse, Sequence[Tuple[str, Union[str, bytes]]] + db_version.ListDbVersionsResponse, Sequence[Tuple[str, Union[str, bytes]]] ]: - """Post-rpc interceptor for list_odb_subnets + """Post-rpc interceptor for list_db_versions Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_list_odb_subnets_with_metadata` - interceptor in new development instead of the `post_list_odb_subnets` interceptor. - When both interceptors are used, this `post_list_odb_subnets_with_metadata` interceptor runs after the - `post_list_odb_subnets` interceptor. The (possibly modified) response returned by - `post_list_odb_subnets` will be passed to - `post_list_odb_subnets_with_metadata`. - """ - return response, metadata + We recommend only using this `post_list_db_versions_with_metadata` + interceptor in new development instead of the `post_list_db_versions` interceptor. + When both interceptors are used, this `post_list_db_versions_with_metadata` interceptor runs after the + `post_list_db_versions` interceptor. The (possibly modified) response returned by + `post_list_db_versions` will be passed to + `post_list_db_versions_with_metadata`. + """ + return response, metadata - def pre_list_pluggable_databases( + def pre_list_entitlements( self, - request: pluggable_database.ListPluggableDatabasesRequest, + request: oracledatabase.ListEntitlementsRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - pluggable_database.ListPluggableDatabasesRequest, - Sequence[Tuple[str, Union[str, bytes]]], + oracledatabase.ListEntitlementsRequest, Sequence[Tuple[str, Union[str, bytes]]] ]: - """Pre-rpc interceptor for list_pluggable_databases + """Pre-rpc interceptor for list_entitlements Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_list_pluggable_databases( - self, response: pluggable_database.ListPluggableDatabasesResponse - ) -> pluggable_database.ListPluggableDatabasesResponse: - """Post-rpc interceptor for list_pluggable_databases + def post_list_entitlements( + self, response: oracledatabase.ListEntitlementsResponse + ) -> oracledatabase.ListEntitlementsResponse: + """Post-rpc interceptor for list_entitlements - DEPRECATED. Please use the `post_list_pluggable_databases_with_metadata` + DEPRECATED. Please use the `post_list_entitlements_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_list_pluggable_databases` interceptor runs - before the `post_list_pluggable_databases_with_metadata` interceptor. + it is returned to user code. This `post_list_entitlements` interceptor runs + before the `post_list_entitlements_with_metadata` interceptor. """ return response - def post_list_pluggable_databases_with_metadata( + def post_list_entitlements_with_metadata( self, - response: pluggable_database.ListPluggableDatabasesResponse, + response: oracledatabase.ListEntitlementsResponse, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - pluggable_database.ListPluggableDatabasesResponse, - Sequence[Tuple[str, Union[str, bytes]]], + oracledatabase.ListEntitlementsResponse, Sequence[Tuple[str, Union[str, bytes]]] ]: - """Post-rpc interceptor for list_pluggable_databases + """Post-rpc interceptor for list_entitlements Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_list_pluggable_databases_with_metadata` - interceptor in new development instead of the `post_list_pluggable_databases` interceptor. - When both interceptors are used, this `post_list_pluggable_databases_with_metadata` interceptor runs after the - `post_list_pluggable_databases` interceptor. The (possibly modified) response returned by - `post_list_pluggable_databases` will be passed to - `post_list_pluggable_databases_with_metadata`. + We recommend only using this `post_list_entitlements_with_metadata` + interceptor in new development instead of the `post_list_entitlements` interceptor. + When both interceptors are used, this `post_list_entitlements_with_metadata` interceptor runs after the + `post_list_entitlements` interceptor. The (possibly modified) response returned by + `post_list_entitlements` will be passed to + `post_list_entitlements_with_metadata`. """ return response, metadata - def pre_remove_virtual_machine_exadb_vm_cluster( + def pre_list_exadb_vm_clusters( self, - request: oracledatabase.RemoveVirtualMachineExadbVmClusterRequest, + request: oracledatabase.ListExadbVmClustersRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - oracledatabase.RemoveVirtualMachineExadbVmClusterRequest, + oracledatabase.ListExadbVmClustersRequest, Sequence[Tuple[str, Union[str, bytes]]], ]: - """Pre-rpc interceptor for remove_virtual_machine_exadb_vm_cluster + """Pre-rpc interceptor for list_exadb_vm_clusters Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_remove_virtual_machine_exadb_vm_cluster( - self, response: operations_pb2.Operation - ) -> operations_pb2.Operation: - """Post-rpc interceptor for remove_virtual_machine_exadb_vm_cluster + def post_list_exadb_vm_clusters( + self, response: oracledatabase.ListExadbVmClustersResponse + ) -> oracledatabase.ListExadbVmClustersResponse: + """Post-rpc interceptor for list_exadb_vm_clusters - DEPRECATED. Please use the `post_remove_virtual_machine_exadb_vm_cluster_with_metadata` + DEPRECATED. Please use the `post_list_exadb_vm_clusters_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_remove_virtual_machine_exadb_vm_cluster` interceptor runs - before the `post_remove_virtual_machine_exadb_vm_cluster_with_metadata` interceptor. + it is returned to user code. This `post_list_exadb_vm_clusters` interceptor runs + before the `post_list_exadb_vm_clusters_with_metadata` interceptor. """ return response - def post_remove_virtual_machine_exadb_vm_cluster_with_metadata( + def post_list_exadb_vm_clusters_with_metadata( self, - response: operations_pb2.Operation, + response: oracledatabase.ListExadbVmClustersResponse, metadata: Sequence[Tuple[str, Union[str, bytes]]], - ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: - """Post-rpc interceptor for remove_virtual_machine_exadb_vm_cluster + ) -> Tuple[ + oracledatabase.ListExadbVmClustersResponse, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Post-rpc interceptor for list_exadb_vm_clusters Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_remove_virtual_machine_exadb_vm_cluster_with_metadata` - interceptor in new development instead of the `post_remove_virtual_machine_exadb_vm_cluster` interceptor. - When both interceptors are used, this `post_remove_virtual_machine_exadb_vm_cluster_with_metadata` interceptor runs after the - `post_remove_virtual_machine_exadb_vm_cluster` interceptor. The (possibly modified) response returned by - `post_remove_virtual_machine_exadb_vm_cluster` will be passed to - `post_remove_virtual_machine_exadb_vm_cluster_with_metadata`. + We recommend only using this `post_list_exadb_vm_clusters_with_metadata` + interceptor in new development instead of the `post_list_exadb_vm_clusters` interceptor. + When both interceptors are used, this `post_list_exadb_vm_clusters_with_metadata` interceptor runs after the + `post_list_exadb_vm_clusters` interceptor. The (possibly modified) response returned by + `post_list_exadb_vm_clusters` will be passed to + `post_list_exadb_vm_clusters_with_metadata`. """ return response, metadata - def pre_restart_autonomous_database( + def pre_list_exascale_db_storage_vaults( self, - request: oracledatabase.RestartAutonomousDatabaseRequest, + request: exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - oracledatabase.RestartAutonomousDatabaseRequest, + exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest, Sequence[Tuple[str, Union[str, bytes]]], ]: - """Pre-rpc interceptor for restart_autonomous_database + """Pre-rpc interceptor for list_exascale_db_storage_vaults Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_restart_autonomous_database( - self, response: operations_pb2.Operation - ) -> operations_pb2.Operation: - """Post-rpc interceptor for restart_autonomous_database + def post_list_exascale_db_storage_vaults( + self, response: exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse + ) -> exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse: + """Post-rpc interceptor for list_exascale_db_storage_vaults - DEPRECATED. Please use the `post_restart_autonomous_database_with_metadata` + DEPRECATED. Please use the `post_list_exascale_db_storage_vaults_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_restart_autonomous_database` interceptor runs - before the `post_restart_autonomous_database_with_metadata` interceptor. + it is returned to user code. This `post_list_exascale_db_storage_vaults` interceptor runs + before the `post_list_exascale_db_storage_vaults_with_metadata` interceptor. """ return response - def post_restart_autonomous_database_with_metadata( + def post_list_exascale_db_storage_vaults_with_metadata( self, - response: operations_pb2.Operation, + response: exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse, metadata: Sequence[Tuple[str, Union[str, bytes]]], - ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: - """Post-rpc interceptor for restart_autonomous_database + ) -> Tuple[ + exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Post-rpc interceptor for list_exascale_db_storage_vaults Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_restart_autonomous_database_with_metadata` - interceptor in new development instead of the `post_restart_autonomous_database` interceptor. - When both interceptors are used, this `post_restart_autonomous_database_with_metadata` interceptor runs after the - `post_restart_autonomous_database` interceptor. The (possibly modified) response returned by - `post_restart_autonomous_database` will be passed to - `post_restart_autonomous_database_with_metadata`. + We recommend only using this `post_list_exascale_db_storage_vaults_with_metadata` + interceptor in new development instead of the `post_list_exascale_db_storage_vaults` interceptor. + When both interceptors are used, this `post_list_exascale_db_storage_vaults_with_metadata` interceptor runs after the + `post_list_exascale_db_storage_vaults` interceptor. The (possibly modified) response returned by + `post_list_exascale_db_storage_vaults` will be passed to + `post_list_exascale_db_storage_vaults_with_metadata`. """ return response, metadata - def pre_restore_autonomous_database( + def pre_list_gi_versions( self, - request: oracledatabase.RestoreAutonomousDatabaseRequest, + request: oracledatabase.ListGiVersionsRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - oracledatabase.RestoreAutonomousDatabaseRequest, - Sequence[Tuple[str, Union[str, bytes]]], + oracledatabase.ListGiVersionsRequest, Sequence[Tuple[str, Union[str, bytes]]] ]: - """Pre-rpc interceptor for restore_autonomous_database + """Pre-rpc interceptor for list_gi_versions Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_restore_autonomous_database( - self, response: operations_pb2.Operation - ) -> operations_pb2.Operation: - """Post-rpc interceptor for restore_autonomous_database + def post_list_gi_versions( + self, response: oracledatabase.ListGiVersionsResponse + ) -> oracledatabase.ListGiVersionsResponse: + """Post-rpc interceptor for list_gi_versions - DEPRECATED. Please use the `post_restore_autonomous_database_with_metadata` + DEPRECATED. Please use the `post_list_gi_versions_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_restore_autonomous_database` interceptor runs - before the `post_restore_autonomous_database_with_metadata` interceptor. + it is returned to user code. This `post_list_gi_versions` interceptor runs + before the `post_list_gi_versions_with_metadata` interceptor. """ return response - def post_restore_autonomous_database_with_metadata( + def post_list_gi_versions_with_metadata( self, - response: operations_pb2.Operation, + response: oracledatabase.ListGiVersionsResponse, metadata: Sequence[Tuple[str, Union[str, bytes]]], - ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: - """Post-rpc interceptor for restore_autonomous_database + ) -> Tuple[ + oracledatabase.ListGiVersionsResponse, Sequence[Tuple[str, Union[str, bytes]]] + ]: + """Post-rpc interceptor for list_gi_versions Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_restore_autonomous_database_with_metadata` - interceptor in new development instead of the `post_restore_autonomous_database` interceptor. - When both interceptors are used, this `post_restore_autonomous_database_with_metadata` interceptor runs after the - `post_restore_autonomous_database` interceptor. The (possibly modified) response returned by - `post_restore_autonomous_database` will be passed to - `post_restore_autonomous_database_with_metadata`. + We recommend only using this `post_list_gi_versions_with_metadata` + interceptor in new development instead of the `post_list_gi_versions` interceptor. + When both interceptors are used, this `post_list_gi_versions_with_metadata` interceptor runs after the + `post_list_gi_versions` interceptor. The (possibly modified) response returned by + `post_list_gi_versions` will be passed to + `post_list_gi_versions_with_metadata`. """ return response, metadata - def pre_start_autonomous_database( + def pre_list_goldengate_connection_assignments( self, - request: oracledatabase.StartAutonomousDatabaseRequest, + request: goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - oracledatabase.StartAutonomousDatabaseRequest, + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest, Sequence[Tuple[str, Union[str, bytes]]], ]: - """Pre-rpc interceptor for start_autonomous_database + """Pre-rpc interceptor for list_goldengate_connection_assignments Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_start_autonomous_database( - self, response: operations_pb2.Operation - ) -> operations_pb2.Operation: - """Post-rpc interceptor for start_autonomous_database + def post_list_goldengate_connection_assignments( + self, + response: goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse, + ) -> goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse: + """Post-rpc interceptor for list_goldengate_connection_assignments - DEPRECATED. Please use the `post_start_autonomous_database_with_metadata` + DEPRECATED. Please use the `post_list_goldengate_connection_assignments_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_start_autonomous_database` interceptor runs - before the `post_start_autonomous_database_with_metadata` interceptor. + it is returned to user code. This `post_list_goldengate_connection_assignments` interceptor runs + before the `post_list_goldengate_connection_assignments_with_metadata` interceptor. """ return response - def post_start_autonomous_database_with_metadata( + def post_list_goldengate_connection_assignments_with_metadata( self, - response: operations_pb2.Operation, + response: goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse, metadata: Sequence[Tuple[str, Union[str, bytes]]], - ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: - """Post-rpc interceptor for start_autonomous_database + ) -> Tuple[ + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Post-rpc interceptor for list_goldengate_connection_assignments Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_start_autonomous_database_with_metadata` - interceptor in new development instead of the `post_start_autonomous_database` interceptor. - When both interceptors are used, this `post_start_autonomous_database_with_metadata` interceptor runs after the - `post_start_autonomous_database` interceptor. The (possibly modified) response returned by - `post_start_autonomous_database` will be passed to - `post_start_autonomous_database_with_metadata`. + We recommend only using this `post_list_goldengate_connection_assignments_with_metadata` + interceptor in new development instead of the `post_list_goldengate_connection_assignments` interceptor. + When both interceptors are used, this `post_list_goldengate_connection_assignments_with_metadata` interceptor runs after the + `post_list_goldengate_connection_assignments` interceptor. The (possibly modified) response returned by + `post_list_goldengate_connection_assignments` will be passed to + `post_list_goldengate_connection_assignments_with_metadata`. """ return response, metadata - def pre_stop_autonomous_database( + def pre_list_goldengate_connections( self, - request: oracledatabase.StopAutonomousDatabaseRequest, + request: goldengate_connection.ListGoldengateConnectionsRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - oracledatabase.StopAutonomousDatabaseRequest, + goldengate_connection.ListGoldengateConnectionsRequest, Sequence[Tuple[str, Union[str, bytes]]], ]: - """Pre-rpc interceptor for stop_autonomous_database + """Pre-rpc interceptor for list_goldengate_connections Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_stop_autonomous_database( - self, response: operations_pb2.Operation - ) -> operations_pb2.Operation: - """Post-rpc interceptor for stop_autonomous_database + def post_list_goldengate_connections( + self, response: goldengate_connection.ListGoldengateConnectionsResponse + ) -> goldengate_connection.ListGoldengateConnectionsResponse: + """Post-rpc interceptor for list_goldengate_connections - DEPRECATED. Please use the `post_stop_autonomous_database_with_metadata` + DEPRECATED. Please use the `post_list_goldengate_connections_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_stop_autonomous_database` interceptor runs - before the `post_stop_autonomous_database_with_metadata` interceptor. + it is returned to user code. This `post_list_goldengate_connections` interceptor runs + before the `post_list_goldengate_connections_with_metadata` interceptor. """ return response - def post_stop_autonomous_database_with_metadata( + def post_list_goldengate_connections_with_metadata( self, - response: operations_pb2.Operation, + response: goldengate_connection.ListGoldengateConnectionsResponse, metadata: Sequence[Tuple[str, Union[str, bytes]]], - ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: - """Post-rpc interceptor for stop_autonomous_database + ) -> Tuple[ + goldengate_connection.ListGoldengateConnectionsResponse, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Post-rpc interceptor for list_goldengate_connections Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_stop_autonomous_database_with_metadata` - interceptor in new development instead of the `post_stop_autonomous_database` interceptor. - When both interceptors are used, this `post_stop_autonomous_database_with_metadata` interceptor runs after the - `post_stop_autonomous_database` interceptor. The (possibly modified) response returned by - `post_stop_autonomous_database` will be passed to - `post_stop_autonomous_database_with_metadata`. + We recommend only using this `post_list_goldengate_connections_with_metadata` + interceptor in new development instead of the `post_list_goldengate_connections` interceptor. + When both interceptors are used, this `post_list_goldengate_connections_with_metadata` interceptor runs after the + `post_list_goldengate_connections` interceptor. The (possibly modified) response returned by + `post_list_goldengate_connections` will be passed to + `post_list_goldengate_connections_with_metadata`. """ return response, metadata - def pre_switchover_autonomous_database( + def pre_list_goldengate_connection_types( self, - request: oracledatabase.SwitchoverAutonomousDatabaseRequest, + request: goldengate_connection_type.ListGoldengateConnectionTypesRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - oracledatabase.SwitchoverAutonomousDatabaseRequest, + goldengate_connection_type.ListGoldengateConnectionTypesRequest, Sequence[Tuple[str, Union[str, bytes]]], ]: - """Pre-rpc interceptor for switchover_autonomous_database + """Pre-rpc interceptor for list_goldengate_connection_types Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_switchover_autonomous_database( - self, response: operations_pb2.Operation - ) -> operations_pb2.Operation: - """Post-rpc interceptor for switchover_autonomous_database + def post_list_goldengate_connection_types( + self, response: goldengate_connection_type.ListGoldengateConnectionTypesResponse + ) -> goldengate_connection_type.ListGoldengateConnectionTypesResponse: + """Post-rpc interceptor for list_goldengate_connection_types - DEPRECATED. Please use the `post_switchover_autonomous_database_with_metadata` + DEPRECATED. Please use the `post_list_goldengate_connection_types_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_switchover_autonomous_database` interceptor runs - before the `post_switchover_autonomous_database_with_metadata` interceptor. + it is returned to user code. This `post_list_goldengate_connection_types` interceptor runs + before the `post_list_goldengate_connection_types_with_metadata` interceptor. """ return response - def post_switchover_autonomous_database_with_metadata( + def post_list_goldengate_connection_types_with_metadata( self, - response: operations_pb2.Operation, + response: goldengate_connection_type.ListGoldengateConnectionTypesResponse, metadata: Sequence[Tuple[str, Union[str, bytes]]], - ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: - """Post-rpc interceptor for switchover_autonomous_database + ) -> Tuple[ + goldengate_connection_type.ListGoldengateConnectionTypesResponse, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Post-rpc interceptor for list_goldengate_connection_types Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_switchover_autonomous_database_with_metadata` - interceptor in new development instead of the `post_switchover_autonomous_database` interceptor. - When both interceptors are used, this `post_switchover_autonomous_database_with_metadata` interceptor runs after the - `post_switchover_autonomous_database` interceptor. The (possibly modified) response returned by - `post_switchover_autonomous_database` will be passed to - `post_switchover_autonomous_database_with_metadata`. + We recommend only using this `post_list_goldengate_connection_types_with_metadata` + interceptor in new development instead of the `post_list_goldengate_connection_types` interceptor. + When both interceptors are used, this `post_list_goldengate_connection_types_with_metadata` interceptor runs after the + `post_list_goldengate_connection_types` interceptor. The (possibly modified) response returned by + `post_list_goldengate_connection_types` will be passed to + `post_list_goldengate_connection_types_with_metadata`. """ return response, metadata - def pre_update_autonomous_database( + def pre_list_goldengate_deployment_environments( self, - request: oracledatabase.UpdateAutonomousDatabaseRequest, + request: goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - oracledatabase.UpdateAutonomousDatabaseRequest, + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest, Sequence[Tuple[str, Union[str, bytes]]], ]: - """Pre-rpc interceptor for update_autonomous_database + """Pre-rpc interceptor for list_goldengate_deployment_environments Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_update_autonomous_database( - self, response: operations_pb2.Operation - ) -> operations_pb2.Operation: - """Post-rpc interceptor for update_autonomous_database + def post_list_goldengate_deployment_environments( + self, + response: goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse, + ) -> goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse: + """Post-rpc interceptor for list_goldengate_deployment_environments - DEPRECATED. Please use the `post_update_autonomous_database_with_metadata` + DEPRECATED. Please use the `post_list_goldengate_deployment_environments_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_update_autonomous_database` interceptor runs - before the `post_update_autonomous_database_with_metadata` interceptor. + it is returned to user code. This `post_list_goldengate_deployment_environments` interceptor runs + before the `post_list_goldengate_deployment_environments_with_metadata` interceptor. """ return response - def post_update_autonomous_database_with_metadata( + def post_list_goldengate_deployment_environments_with_metadata( self, - response: operations_pb2.Operation, + response: goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse, metadata: Sequence[Tuple[str, Union[str, bytes]]], - ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: - """Post-rpc interceptor for update_autonomous_database + ) -> Tuple[ + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Post-rpc interceptor for list_goldengate_deployment_environments Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_update_autonomous_database_with_metadata` - interceptor in new development instead of the `post_update_autonomous_database` interceptor. - When both interceptors are used, this `post_update_autonomous_database_with_metadata` interceptor runs after the - `post_update_autonomous_database` interceptor. The (possibly modified) response returned by - `post_update_autonomous_database` will be passed to - `post_update_autonomous_database_with_metadata`. + We recommend only using this `post_list_goldengate_deployment_environments_with_metadata` + interceptor in new development instead of the `post_list_goldengate_deployment_environments` interceptor. + When both interceptors are used, this `post_list_goldengate_deployment_environments_with_metadata` interceptor runs after the + `post_list_goldengate_deployment_environments` interceptor. The (possibly modified) response returned by + `post_list_goldengate_deployment_environments` will be passed to + `post_list_goldengate_deployment_environments_with_metadata`. """ return response, metadata - def pre_update_exadb_vm_cluster( + def pre_list_goldengate_deployments( self, - request: oracledatabase.UpdateExadbVmClusterRequest, + request: goldengate_deployment.ListGoldengateDeploymentsRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - oracledatabase.UpdateExadbVmClusterRequest, + goldengate_deployment.ListGoldengateDeploymentsRequest, Sequence[Tuple[str, Union[str, bytes]]], ]: - """Pre-rpc interceptor for update_exadb_vm_cluster + """Pre-rpc interceptor for list_goldengate_deployments Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_update_exadb_vm_cluster( - self, response: operations_pb2.Operation - ) -> operations_pb2.Operation: - """Post-rpc interceptor for update_exadb_vm_cluster + def post_list_goldengate_deployments( + self, response: goldengate_deployment.ListGoldengateDeploymentsResponse + ) -> goldengate_deployment.ListGoldengateDeploymentsResponse: + """Post-rpc interceptor for list_goldengate_deployments - DEPRECATED. Please use the `post_update_exadb_vm_cluster_with_metadata` + DEPRECATED. Please use the `post_list_goldengate_deployments_with_metadata` interceptor instead. Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. This `post_update_exadb_vm_cluster` interceptor runs - before the `post_update_exadb_vm_cluster_with_metadata` interceptor. + it is returned to user code. This `post_list_goldengate_deployments` interceptor runs + before the `post_list_goldengate_deployments_with_metadata` interceptor. """ return response - def post_update_exadb_vm_cluster_with_metadata( + def post_list_goldengate_deployments_with_metadata( self, - response: operations_pb2.Operation, + response: goldengate_deployment.ListGoldengateDeploymentsResponse, metadata: Sequence[Tuple[str, Union[str, bytes]]], - ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: - """Post-rpc interceptor for update_exadb_vm_cluster + ) -> Tuple[ + goldengate_deployment.ListGoldengateDeploymentsResponse, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Post-rpc interceptor for list_goldengate_deployments Override in a subclass to read or manipulate the response or metadata after it is returned by the OracleDatabase server but before it is returned to user code. - We recommend only using this `post_update_exadb_vm_cluster_with_metadata` - interceptor in new development instead of the `post_update_exadb_vm_cluster` interceptor. - When both interceptors are used, this `post_update_exadb_vm_cluster_with_metadata` interceptor runs after the - `post_update_exadb_vm_cluster` interceptor. The (possibly modified) response returned by - `post_update_exadb_vm_cluster` will be passed to - `post_update_exadb_vm_cluster_with_metadata`. + We recommend only using this `post_list_goldengate_deployments_with_metadata` + interceptor in new development instead of the `post_list_goldengate_deployments` interceptor. + When both interceptors are used, this `post_list_goldengate_deployments_with_metadata` interceptor runs after the + `post_list_goldengate_deployments` interceptor. The (possibly modified) response returned by + `post_list_goldengate_deployments` will be passed to + `post_list_goldengate_deployments_with_metadata`. """ return response, metadata - def pre_get_location( + def pre_list_goldengate_deployment_types( self, - request: locations_pb2.GetLocationRequest, + request: goldengate_deployment_type.ListGoldengateDeploymentTypesRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - locations_pb2.GetLocationRequest, Sequence[Tuple[str, Union[str, bytes]]] + goldengate_deployment_type.ListGoldengateDeploymentTypesRequest, + Sequence[Tuple[str, Union[str, bytes]]], ]: - """Pre-rpc interceptor for get_location + """Pre-rpc interceptor for list_goldengate_deployment_types Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_get_location( - self, response: locations_pb2.Location - ) -> locations_pb2.Location: - """Post-rpc interceptor for get_location + def post_list_goldengate_deployment_types( + self, response: goldengate_deployment_type.ListGoldengateDeploymentTypesResponse + ) -> goldengate_deployment_type.ListGoldengateDeploymentTypesResponse: + """Post-rpc interceptor for list_goldengate_deployment_types - Override in a subclass to manipulate the response + DEPRECATED. Please use the `post_list_goldengate_deployment_types_with_metadata` + interceptor instead. + + Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. + it is returned to user code. This `post_list_goldengate_deployment_types` interceptor runs + before the `post_list_goldengate_deployment_types_with_metadata` interceptor. """ return response - def pre_list_locations( + def post_list_goldengate_deployment_types_with_metadata( self, - request: locations_pb2.ListLocationsRequest, + response: goldengate_deployment_type.ListGoldengateDeploymentTypesResponse, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - locations_pb2.ListLocationsRequest, Sequence[Tuple[str, Union[str, bytes]]] + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse, + Sequence[Tuple[str, Union[str, bytes]]], ]: - """Pre-rpc interceptor for list_locations + """Post-rpc interceptor for list_goldengate_deployment_types - Override in a subclass to manipulate the request or metadata - before they are sent to the OracleDatabase server. - """ - return request, metadata - - def post_list_locations( - self, response: locations_pb2.ListLocationsResponse - ) -> locations_pb2.ListLocationsResponse: - """Post-rpc interceptor for list_locations + Override in a subclass to read or manipulate the response or metadata after it + is returned by the OracleDatabase server but before it is returned to user code. - Override in a subclass to manipulate the response - after it is returned by the OracleDatabase server but before - it is returned to user code. + We recommend only using this `post_list_goldengate_deployment_types_with_metadata` + interceptor in new development instead of the `post_list_goldengate_deployment_types` interceptor. + When both interceptors are used, this `post_list_goldengate_deployment_types_with_metadata` interceptor runs after the + `post_list_goldengate_deployment_types` interceptor. The (possibly modified) response returned by + `post_list_goldengate_deployment_types` will be passed to + `post_list_goldengate_deployment_types_with_metadata`. """ - return response + return response, metadata - def pre_cancel_operation( + def pre_list_goldengate_deployment_versions( self, - request: operations_pb2.CancelOperationRequest, + request: goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - operations_pb2.CancelOperationRequest, Sequence[Tuple[str, Union[str, bytes]]] + goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest, + Sequence[Tuple[str, Union[str, bytes]]], ]: - """Pre-rpc interceptor for cancel_operation + """Pre-rpc interceptor for list_goldengate_deployment_versions Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_cancel_operation(self, response: None) -> None: - """Post-rpc interceptor for cancel_operation + def post_list_goldengate_deployment_versions( + self, + response: goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse, + ) -> goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse: + """Post-rpc interceptor for list_goldengate_deployment_versions - Override in a subclass to manipulate the response + DEPRECATED. Please use the `post_list_goldengate_deployment_versions_with_metadata` + interceptor instead. + + Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. + it is returned to user code. This `post_list_goldengate_deployment_versions` interceptor runs + before the `post_list_goldengate_deployment_versions_with_metadata` interceptor. """ return response - def pre_delete_operation( + def post_list_goldengate_deployment_versions_with_metadata( self, - request: operations_pb2.DeleteOperationRequest, + response: goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - operations_pb2.DeleteOperationRequest, Sequence[Tuple[str, Union[str, bytes]]] + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse, + Sequence[Tuple[str, Union[str, bytes]]], ]: - """Pre-rpc interceptor for delete_operation + """Post-rpc interceptor for list_goldengate_deployment_versions + + Override in a subclass to read or manipulate the response or metadata after it + is returned by the OracleDatabase server but before it is returned to user code. + + We recommend only using this `post_list_goldengate_deployment_versions_with_metadata` + interceptor in new development instead of the `post_list_goldengate_deployment_versions` interceptor. + When both interceptors are used, this `post_list_goldengate_deployment_versions_with_metadata` interceptor runs after the + `post_list_goldengate_deployment_versions` interceptor. The (possibly modified) response returned by + `post_list_goldengate_deployment_versions` will be passed to + `post_list_goldengate_deployment_versions_with_metadata`. + """ + return response, metadata + + def pre_list_minor_versions( + self, + request: minor_version.ListMinorVersionsRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + minor_version.ListMinorVersionsRequest, Sequence[Tuple[str, Union[str, bytes]]] + ]: + """Pre-rpc interceptor for list_minor_versions Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_delete_operation(self, response: None) -> None: - """Post-rpc interceptor for delete_operation + def post_list_minor_versions( + self, response: minor_version.ListMinorVersionsResponse + ) -> minor_version.ListMinorVersionsResponse: + """Post-rpc interceptor for list_minor_versions - Override in a subclass to manipulate the response + DEPRECATED. Please use the `post_list_minor_versions_with_metadata` + interceptor instead. + + Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. + it is returned to user code. This `post_list_minor_versions` interceptor runs + before the `post_list_minor_versions_with_metadata` interceptor. """ return response - def pre_get_operation( + def post_list_minor_versions_with_metadata( self, - request: operations_pb2.GetOperationRequest, + response: minor_version.ListMinorVersionsResponse, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - operations_pb2.GetOperationRequest, Sequence[Tuple[str, Union[str, bytes]]] + minor_version.ListMinorVersionsResponse, Sequence[Tuple[str, Union[str, bytes]]] ]: - """Pre-rpc interceptor for get_operation + """Post-rpc interceptor for list_minor_versions + + Override in a subclass to read or manipulate the response or metadata after it + is returned by the OracleDatabase server but before it is returned to user code. + + We recommend only using this `post_list_minor_versions_with_metadata` + interceptor in new development instead of the `post_list_minor_versions` interceptor. + When both interceptors are used, this `post_list_minor_versions_with_metadata` interceptor runs after the + `post_list_minor_versions` interceptor. The (possibly modified) response returned by + `post_list_minor_versions` will be passed to + `post_list_minor_versions_with_metadata`. + """ + return response, metadata + + def pre_list_odb_networks( + self, + request: odb_network.ListOdbNetworksRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + odb_network.ListOdbNetworksRequest, Sequence[Tuple[str, Union[str, bytes]]] + ]: + """Pre-rpc interceptor for list_odb_networks Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_get_operation( - self, response: operations_pb2.Operation - ) -> operations_pb2.Operation: - """Post-rpc interceptor for get_operation + def post_list_odb_networks( + self, response: odb_network.ListOdbNetworksResponse + ) -> odb_network.ListOdbNetworksResponse: + """Post-rpc interceptor for list_odb_networks - Override in a subclass to manipulate the response + DEPRECATED. Please use the `post_list_odb_networks_with_metadata` + interceptor instead. + + Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. + it is returned to user code. This `post_list_odb_networks` interceptor runs + before the `post_list_odb_networks_with_metadata` interceptor. """ return response - def pre_list_operations( + def post_list_odb_networks_with_metadata( self, - request: operations_pb2.ListOperationsRequest, + response: odb_network.ListOdbNetworksResponse, metadata: Sequence[Tuple[str, Union[str, bytes]]], ) -> Tuple[ - operations_pb2.ListOperationsRequest, Sequence[Tuple[str, Union[str, bytes]]] + odb_network.ListOdbNetworksResponse, Sequence[Tuple[str, Union[str, bytes]]] ]: - """Pre-rpc interceptor for list_operations + """Post-rpc interceptor for list_odb_networks + + Override in a subclass to read or manipulate the response or metadata after it + is returned by the OracleDatabase server but before it is returned to user code. + + We recommend only using this `post_list_odb_networks_with_metadata` + interceptor in new development instead of the `post_list_odb_networks` interceptor. + When both interceptors are used, this `post_list_odb_networks_with_metadata` interceptor runs after the + `post_list_odb_networks` interceptor. The (possibly modified) response returned by + `post_list_odb_networks` will be passed to + `post_list_odb_networks_with_metadata`. + """ + return response, metadata + + def pre_list_odb_subnets( + self, + request: odb_subnet.ListOdbSubnetsRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + odb_subnet.ListOdbSubnetsRequest, Sequence[Tuple[str, Union[str, bytes]]] + ]: + """Pre-rpc interceptor for list_odb_subnets Override in a subclass to manipulate the request or metadata before they are sent to the OracleDatabase server. """ return request, metadata - def post_list_operations( - self, response: operations_pb2.ListOperationsResponse - ) -> operations_pb2.ListOperationsResponse: - """Post-rpc interceptor for list_operations + def post_list_odb_subnets( + self, response: odb_subnet.ListOdbSubnetsResponse + ) -> odb_subnet.ListOdbSubnetsResponse: + """Post-rpc interceptor for list_odb_subnets - Override in a subclass to manipulate the response + DEPRECATED. Please use the `post_list_odb_subnets_with_metadata` + interceptor instead. + + Override in a subclass to read or manipulate the response after it is returned by the OracleDatabase server but before - it is returned to user code. + it is returned to user code. This `post_list_odb_subnets` interceptor runs + before the `post_list_odb_subnets_with_metadata` interceptor. """ return response + def post_list_odb_subnets_with_metadata( + self, + response: odb_subnet.ListOdbSubnetsResponse, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + odb_subnet.ListOdbSubnetsResponse, Sequence[Tuple[str, Union[str, bytes]]] + ]: + """Post-rpc interceptor for list_odb_subnets -@dataclasses.dataclass -class OracleDatabaseRestStub: - _session: AuthorizedSession - _host: str - _interceptor: OracleDatabaseRestInterceptor - - -class OracleDatabaseRestTransport(_BaseOracleDatabaseRestTransport): - """REST backend synchronous transport for OracleDatabase. + Override in a subclass to read or manipulate the response or metadata after it + is returned by the OracleDatabase server but before it is returned to user code. - Service describing handlers for resources + We recommend only using this `post_list_odb_subnets_with_metadata` + interceptor in new development instead of the `post_list_odb_subnets` interceptor. + When both interceptors are used, this `post_list_odb_subnets_with_metadata` interceptor runs after the + `post_list_odb_subnets` interceptor. The (possibly modified) response returned by + `post_list_odb_subnets` will be passed to + `post_list_odb_subnets_with_metadata`. + """ + return response, metadata - This class defines the same methods as the primary client, so the - primary client can load the underlying transport implementation - and call it. + def pre_list_pluggable_databases( + self, + request: pluggable_database.ListPluggableDatabasesRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + pluggable_database.ListPluggableDatabasesRequest, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Pre-rpc interceptor for list_pluggable_databases - It sends JSON representations of protocol buffers over HTTP/1.1 - """ + Override in a subclass to manipulate the request or metadata + before they are sent to the OracleDatabase server. + """ + return request, metadata - def __init__( + def post_list_pluggable_databases( + self, response: pluggable_database.ListPluggableDatabasesResponse + ) -> pluggable_database.ListPluggableDatabasesResponse: + """Post-rpc interceptor for list_pluggable_databases + + DEPRECATED. Please use the `post_list_pluggable_databases_with_metadata` + interceptor instead. + + Override in a subclass to read or manipulate the response + after it is returned by the OracleDatabase server but before + it is returned to user code. This `post_list_pluggable_databases` interceptor runs + before the `post_list_pluggable_databases_with_metadata` interceptor. + """ + return response + + def post_list_pluggable_databases_with_metadata( self, - *, - host: str = "oracledatabase.googleapis.com", - credentials: Optional[ga_credentials.Credentials] = None, - credentials_file: Optional[str] = None, - scopes: Optional[Sequence[str]] = None, - client_cert_source_for_mtls: Optional[Callable[[], Tuple[bytes, bytes]]] = None, - quota_project_id: Optional[str] = None, - client_info: gapic_v1.client_info.ClientInfo = DEFAULT_CLIENT_INFO, - always_use_jwt_access: Optional[bool] = False, - url_scheme: str = "https", - interceptor: Optional[OracleDatabaseRestInterceptor] = None, - api_audience: Optional[str] = None, - ) -> None: - """Instantiate the transport. + response: pluggable_database.ListPluggableDatabasesResponse, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + pluggable_database.ListPluggableDatabasesResponse, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Post-rpc interceptor for list_pluggable_databases - Args: - host (Optional[str]): - The hostname to connect to (default: 'oracledatabase.googleapis.com'). - credentials (Optional[google.auth.credentials.Credentials]): The - authorization credentials to attach to requests. These - credentials identify the application to the service; if none - are specified, the client will attempt to ascertain the - credentials from the environment. + Override in a subclass to read or manipulate the response or metadata after it + is returned by the OracleDatabase server but before it is returned to user code. - credentials_file (Optional[str]): Deprecated. A file with credentials that can - be loaded with :func:`google.auth.load_credentials_from_file`. - This argument is ignored if ``channel`` is provided. This argument will be - removed in the next major version of this library. - scopes (Optional(Sequence[str])): A list of scopes. This argument is - ignored if ``channel`` is provided. - client_cert_source_for_mtls (Callable[[], Tuple[bytes, bytes]]): Client - certificate to configure mutual TLS HTTP channel. It is ignored - if ``channel`` is provided. - quota_project_id (Optional[str]): An optional project to use for billing - and quota. - client_info (google.api_core.gapic_v1.client_info.ClientInfo): - The client info used to send a user-agent string along with - API requests. If ``None``, then default info will be used. - Generally, you only need to set this if you are developing - your own client library. - always_use_jwt_access (Optional[bool]): Whether self signed JWT should - be used for service account credentials. - url_scheme: the protocol scheme for the API endpoint. Normally - "https", but for testing or local servers, - "http" can be specified. - interceptor (Optional[OracleDatabaseRestInterceptor]): Interceptor used - to manipulate requests, request metadata, and responses. - api_audience (Optional[str]): The intended audience for the API calls - to the service that will be set when using certain 3rd party - authentication flows. Audience is typically a resource identifier. - If not set, the host value will be used as a default. + We recommend only using this `post_list_pluggable_databases_with_metadata` + interceptor in new development instead of the `post_list_pluggable_databases` interceptor. + When both interceptors are used, this `post_list_pluggable_databases_with_metadata` interceptor runs after the + `post_list_pluggable_databases` interceptor. The (possibly modified) response returned by + `post_list_pluggable_databases` will be passed to + `post_list_pluggable_databases_with_metadata`. """ - # Run the base constructor - # TODO(yon-mg): resolve other ctor params i.e. scopes, quota, etc. - # TODO: When custom host (api_endpoint) is set, `scopes` must *also* be set on the - # credentials object - super().__init__( - host=host, - credentials=credentials, - client_info=client_info, - always_use_jwt_access=always_use_jwt_access, - url_scheme=url_scheme, - api_audience=api_audience, - ) - self._session = AuthorizedSession( - self._credentials, default_host=self.DEFAULT_HOST - ) - self._operations_client: Optional[operations_v1.AbstractOperationsClient] = None - if client_cert_source_for_mtls: - self._session.configure_mtls_channel(client_cert_source_for_mtls) - self._interceptor = interceptor or OracleDatabaseRestInterceptor() - self._prep_wrapped_messages(client_info) + return response, metadata - @property - def operations_client(self) -> operations_v1.AbstractOperationsClient: - """Create the client designed to process long-running operations. + def pre_remove_virtual_machine_exadb_vm_cluster( + self, + request: oracledatabase.RemoveVirtualMachineExadbVmClusterRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + oracledatabase.RemoveVirtualMachineExadbVmClusterRequest, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Pre-rpc interceptor for remove_virtual_machine_exadb_vm_cluster - This property caches on the instance; repeated calls return the same - client. + Override in a subclass to manipulate the request or metadata + before they are sent to the OracleDatabase server. """ - # Only create a new client if we do not already have one. - if self._operations_client is None: - http_options: Dict[str, List[Dict[str, str]]] = { - "google.longrunning.Operations.CancelOperation": [ - { - "method": "post", - "uri": "/v1/{name=projects/*/locations/*/operations/*}:cancel", - "body": "*", - }, - ], - "google.longrunning.Operations.DeleteOperation": [ - { - "method": "delete", - "uri": "/v1/{name=projects/*/locations/*/operations/*}", - }, - ], - "google.longrunning.Operations.GetOperation": [ - { - "method": "get", - "uri": "/v1/{name=projects/*/locations/*/operations/*}", - }, - ], - "google.longrunning.Operations.ListOperations": [ - { - "method": "get", - "uri": "/v1/{name=projects/*/locations/*}/operations", + return request, metadata + + def post_remove_virtual_machine_exadb_vm_cluster( + self, response: operations_pb2.Operation + ) -> operations_pb2.Operation: + """Post-rpc interceptor for remove_virtual_machine_exadb_vm_cluster + + DEPRECATED. Please use the `post_remove_virtual_machine_exadb_vm_cluster_with_metadata` + interceptor instead. + + Override in a subclass to read or manipulate the response + after it is returned by the OracleDatabase server but before + it is returned to user code. This `post_remove_virtual_machine_exadb_vm_cluster` interceptor runs + before the `post_remove_virtual_machine_exadb_vm_cluster_with_metadata` interceptor. + """ + return response + + def post_remove_virtual_machine_exadb_vm_cluster_with_metadata( + self, + response: operations_pb2.Operation, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: + """Post-rpc interceptor for remove_virtual_machine_exadb_vm_cluster + + Override in a subclass to read or manipulate the response or metadata after it + is returned by the OracleDatabase server but before it is returned to user code. + + We recommend only using this `post_remove_virtual_machine_exadb_vm_cluster_with_metadata` + interceptor in new development instead of the `post_remove_virtual_machine_exadb_vm_cluster` interceptor. + When both interceptors are used, this `post_remove_virtual_machine_exadb_vm_cluster_with_metadata` interceptor runs after the + `post_remove_virtual_machine_exadb_vm_cluster` interceptor. The (possibly modified) response returned by + `post_remove_virtual_machine_exadb_vm_cluster` will be passed to + `post_remove_virtual_machine_exadb_vm_cluster_with_metadata`. + """ + return response, metadata + + def pre_restart_autonomous_database( + self, + request: oracledatabase.RestartAutonomousDatabaseRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + oracledatabase.RestartAutonomousDatabaseRequest, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Pre-rpc interceptor for restart_autonomous_database + + Override in a subclass to manipulate the request or metadata + before they are sent to the OracleDatabase server. + """ + return request, metadata + + def post_restart_autonomous_database( + self, response: operations_pb2.Operation + ) -> operations_pb2.Operation: + """Post-rpc interceptor for restart_autonomous_database + + DEPRECATED. Please use the `post_restart_autonomous_database_with_metadata` + interceptor instead. + + Override in a subclass to read or manipulate the response + after it is returned by the OracleDatabase server but before + it is returned to user code. This `post_restart_autonomous_database` interceptor runs + before the `post_restart_autonomous_database_with_metadata` interceptor. + """ + return response + + def post_restart_autonomous_database_with_metadata( + self, + response: operations_pb2.Operation, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: + """Post-rpc interceptor for restart_autonomous_database + + Override in a subclass to read or manipulate the response or metadata after it + is returned by the OracleDatabase server but before it is returned to user code. + + We recommend only using this `post_restart_autonomous_database_with_metadata` + interceptor in new development instead of the `post_restart_autonomous_database` interceptor. + When both interceptors are used, this `post_restart_autonomous_database_with_metadata` interceptor runs after the + `post_restart_autonomous_database` interceptor. The (possibly modified) response returned by + `post_restart_autonomous_database` will be passed to + `post_restart_autonomous_database_with_metadata`. + """ + return response, metadata + + def pre_restore_autonomous_database( + self, + request: oracledatabase.RestoreAutonomousDatabaseRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + oracledatabase.RestoreAutonomousDatabaseRequest, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Pre-rpc interceptor for restore_autonomous_database + + Override in a subclass to manipulate the request or metadata + before they are sent to the OracleDatabase server. + """ + return request, metadata + + def post_restore_autonomous_database( + self, response: operations_pb2.Operation + ) -> operations_pb2.Operation: + """Post-rpc interceptor for restore_autonomous_database + + DEPRECATED. Please use the `post_restore_autonomous_database_with_metadata` + interceptor instead. + + Override in a subclass to read or manipulate the response + after it is returned by the OracleDatabase server but before + it is returned to user code. This `post_restore_autonomous_database` interceptor runs + before the `post_restore_autonomous_database_with_metadata` interceptor. + """ + return response + + def post_restore_autonomous_database_with_metadata( + self, + response: operations_pb2.Operation, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: + """Post-rpc interceptor for restore_autonomous_database + + Override in a subclass to read or manipulate the response or metadata after it + is returned by the OracleDatabase server but before it is returned to user code. + + We recommend only using this `post_restore_autonomous_database_with_metadata` + interceptor in new development instead of the `post_restore_autonomous_database` interceptor. + When both interceptors are used, this `post_restore_autonomous_database_with_metadata` interceptor runs after the + `post_restore_autonomous_database` interceptor. The (possibly modified) response returned by + `post_restore_autonomous_database` will be passed to + `post_restore_autonomous_database_with_metadata`. + """ + return response, metadata + + def pre_start_autonomous_database( + self, + request: oracledatabase.StartAutonomousDatabaseRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + oracledatabase.StartAutonomousDatabaseRequest, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Pre-rpc interceptor for start_autonomous_database + + Override in a subclass to manipulate the request or metadata + before they are sent to the OracleDatabase server. + """ + return request, metadata + + def post_start_autonomous_database( + self, response: operations_pb2.Operation + ) -> operations_pb2.Operation: + """Post-rpc interceptor for start_autonomous_database + + DEPRECATED. Please use the `post_start_autonomous_database_with_metadata` + interceptor instead. + + Override in a subclass to read or manipulate the response + after it is returned by the OracleDatabase server but before + it is returned to user code. This `post_start_autonomous_database` interceptor runs + before the `post_start_autonomous_database_with_metadata` interceptor. + """ + return response + + def post_start_autonomous_database_with_metadata( + self, + response: operations_pb2.Operation, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: + """Post-rpc interceptor for start_autonomous_database + + Override in a subclass to read or manipulate the response or metadata after it + is returned by the OracleDatabase server but before it is returned to user code. + + We recommend only using this `post_start_autonomous_database_with_metadata` + interceptor in new development instead of the `post_start_autonomous_database` interceptor. + When both interceptors are used, this `post_start_autonomous_database_with_metadata` interceptor runs after the + `post_start_autonomous_database` interceptor. The (possibly modified) response returned by + `post_start_autonomous_database` will be passed to + `post_start_autonomous_database_with_metadata`. + """ + return response, metadata + + def pre_start_goldengate_deployment( + self, + request: goldengate_deployment.StartGoldengateDeploymentRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + goldengate_deployment.StartGoldengateDeploymentRequest, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Pre-rpc interceptor for start_goldengate_deployment + + Override in a subclass to manipulate the request or metadata + before they are sent to the OracleDatabase server. + """ + return request, metadata + + def post_start_goldengate_deployment( + self, response: operations_pb2.Operation + ) -> operations_pb2.Operation: + """Post-rpc interceptor for start_goldengate_deployment + + DEPRECATED. Please use the `post_start_goldengate_deployment_with_metadata` + interceptor instead. + + Override in a subclass to read or manipulate the response + after it is returned by the OracleDatabase server but before + it is returned to user code. This `post_start_goldengate_deployment` interceptor runs + before the `post_start_goldengate_deployment_with_metadata` interceptor. + """ + return response + + def post_start_goldengate_deployment_with_metadata( + self, + response: operations_pb2.Operation, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: + """Post-rpc interceptor for start_goldengate_deployment + + Override in a subclass to read or manipulate the response or metadata after it + is returned by the OracleDatabase server but before it is returned to user code. + + We recommend only using this `post_start_goldengate_deployment_with_metadata` + interceptor in new development instead of the `post_start_goldengate_deployment` interceptor. + When both interceptors are used, this `post_start_goldengate_deployment_with_metadata` interceptor runs after the + `post_start_goldengate_deployment` interceptor. The (possibly modified) response returned by + `post_start_goldengate_deployment` will be passed to + `post_start_goldengate_deployment_with_metadata`. + """ + return response, metadata + + def pre_stop_autonomous_database( + self, + request: oracledatabase.StopAutonomousDatabaseRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + oracledatabase.StopAutonomousDatabaseRequest, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Pre-rpc interceptor for stop_autonomous_database + + Override in a subclass to manipulate the request or metadata + before they are sent to the OracleDatabase server. + """ + return request, metadata + + def post_stop_autonomous_database( + self, response: operations_pb2.Operation + ) -> operations_pb2.Operation: + """Post-rpc interceptor for stop_autonomous_database + + DEPRECATED. Please use the `post_stop_autonomous_database_with_metadata` + interceptor instead. + + Override in a subclass to read or manipulate the response + after it is returned by the OracleDatabase server but before + it is returned to user code. This `post_stop_autonomous_database` interceptor runs + before the `post_stop_autonomous_database_with_metadata` interceptor. + """ + return response + + def post_stop_autonomous_database_with_metadata( + self, + response: operations_pb2.Operation, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: + """Post-rpc interceptor for stop_autonomous_database + + Override in a subclass to read or manipulate the response or metadata after it + is returned by the OracleDatabase server but before it is returned to user code. + + We recommend only using this `post_stop_autonomous_database_with_metadata` + interceptor in new development instead of the `post_stop_autonomous_database` interceptor. + When both interceptors are used, this `post_stop_autonomous_database_with_metadata` interceptor runs after the + `post_stop_autonomous_database` interceptor. The (possibly modified) response returned by + `post_stop_autonomous_database` will be passed to + `post_stop_autonomous_database_with_metadata`. + """ + return response, metadata + + def pre_stop_goldengate_deployment( + self, + request: goldengate_deployment.StopGoldengateDeploymentRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + goldengate_deployment.StopGoldengateDeploymentRequest, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Pre-rpc interceptor for stop_goldengate_deployment + + Override in a subclass to manipulate the request or metadata + before they are sent to the OracleDatabase server. + """ + return request, metadata + + def post_stop_goldengate_deployment( + self, response: operations_pb2.Operation + ) -> operations_pb2.Operation: + """Post-rpc interceptor for stop_goldengate_deployment + + DEPRECATED. Please use the `post_stop_goldengate_deployment_with_metadata` + interceptor instead. + + Override in a subclass to read or manipulate the response + after it is returned by the OracleDatabase server but before + it is returned to user code. This `post_stop_goldengate_deployment` interceptor runs + before the `post_stop_goldengate_deployment_with_metadata` interceptor. + """ + return response + + def post_stop_goldengate_deployment_with_metadata( + self, + response: operations_pb2.Operation, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: + """Post-rpc interceptor for stop_goldengate_deployment + + Override in a subclass to read or manipulate the response or metadata after it + is returned by the OracleDatabase server but before it is returned to user code. + + We recommend only using this `post_stop_goldengate_deployment_with_metadata` + interceptor in new development instead of the `post_stop_goldengate_deployment` interceptor. + When both interceptors are used, this `post_stop_goldengate_deployment_with_metadata` interceptor runs after the + `post_stop_goldengate_deployment` interceptor. The (possibly modified) response returned by + `post_stop_goldengate_deployment` will be passed to + `post_stop_goldengate_deployment_with_metadata`. + """ + return response, metadata + + def pre_switchover_autonomous_database( + self, + request: oracledatabase.SwitchoverAutonomousDatabaseRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + oracledatabase.SwitchoverAutonomousDatabaseRequest, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Pre-rpc interceptor for switchover_autonomous_database + + Override in a subclass to manipulate the request or metadata + before they are sent to the OracleDatabase server. + """ + return request, metadata + + def post_switchover_autonomous_database( + self, response: operations_pb2.Operation + ) -> operations_pb2.Operation: + """Post-rpc interceptor for switchover_autonomous_database + + DEPRECATED. Please use the `post_switchover_autonomous_database_with_metadata` + interceptor instead. + + Override in a subclass to read or manipulate the response + after it is returned by the OracleDatabase server but before + it is returned to user code. This `post_switchover_autonomous_database` interceptor runs + before the `post_switchover_autonomous_database_with_metadata` interceptor. + """ + return response + + def post_switchover_autonomous_database_with_metadata( + self, + response: operations_pb2.Operation, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: + """Post-rpc interceptor for switchover_autonomous_database + + Override in a subclass to read or manipulate the response or metadata after it + is returned by the OracleDatabase server but before it is returned to user code. + + We recommend only using this `post_switchover_autonomous_database_with_metadata` + interceptor in new development instead of the `post_switchover_autonomous_database` interceptor. + When both interceptors are used, this `post_switchover_autonomous_database_with_metadata` interceptor runs after the + `post_switchover_autonomous_database` interceptor. The (possibly modified) response returned by + `post_switchover_autonomous_database` will be passed to + `post_switchover_autonomous_database_with_metadata`. + """ + return response, metadata + + def pre_test_goldengate_connection_assignment( + self, + request: goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Pre-rpc interceptor for test_goldengate_connection_assignment + + Override in a subclass to manipulate the request or metadata + before they are sent to the OracleDatabase server. + """ + return request, metadata + + def post_test_goldengate_connection_assignment( + self, + response: goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse, + ) -> goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse: + """Post-rpc interceptor for test_goldengate_connection_assignment + + DEPRECATED. Please use the `post_test_goldengate_connection_assignment_with_metadata` + interceptor instead. + + Override in a subclass to read or manipulate the response + after it is returned by the OracleDatabase server but before + it is returned to user code. This `post_test_goldengate_connection_assignment` interceptor runs + before the `post_test_goldengate_connection_assignment_with_metadata` interceptor. + """ + return response + + def post_test_goldengate_connection_assignment_with_metadata( + self, + response: goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Post-rpc interceptor for test_goldengate_connection_assignment + + Override in a subclass to read or manipulate the response or metadata after it + is returned by the OracleDatabase server but before it is returned to user code. + + We recommend only using this `post_test_goldengate_connection_assignment_with_metadata` + interceptor in new development instead of the `post_test_goldengate_connection_assignment` interceptor. + When both interceptors are used, this `post_test_goldengate_connection_assignment_with_metadata` interceptor runs after the + `post_test_goldengate_connection_assignment` interceptor. The (possibly modified) response returned by + `post_test_goldengate_connection_assignment` will be passed to + `post_test_goldengate_connection_assignment_with_metadata`. + """ + return response, metadata + + def pre_update_autonomous_database( + self, + request: oracledatabase.UpdateAutonomousDatabaseRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + oracledatabase.UpdateAutonomousDatabaseRequest, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Pre-rpc interceptor for update_autonomous_database + + Override in a subclass to manipulate the request or metadata + before they are sent to the OracleDatabase server. + """ + return request, metadata + + def post_update_autonomous_database( + self, response: operations_pb2.Operation + ) -> operations_pb2.Operation: + """Post-rpc interceptor for update_autonomous_database + + DEPRECATED. Please use the `post_update_autonomous_database_with_metadata` + interceptor instead. + + Override in a subclass to read or manipulate the response + after it is returned by the OracleDatabase server but before + it is returned to user code. This `post_update_autonomous_database` interceptor runs + before the `post_update_autonomous_database_with_metadata` interceptor. + """ + return response + + def post_update_autonomous_database_with_metadata( + self, + response: operations_pb2.Operation, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: + """Post-rpc interceptor for update_autonomous_database + + Override in a subclass to read or manipulate the response or metadata after it + is returned by the OracleDatabase server but before it is returned to user code. + + We recommend only using this `post_update_autonomous_database_with_metadata` + interceptor in new development instead of the `post_update_autonomous_database` interceptor. + When both interceptors are used, this `post_update_autonomous_database_with_metadata` interceptor runs after the + `post_update_autonomous_database` interceptor. The (possibly modified) response returned by + `post_update_autonomous_database` will be passed to + `post_update_autonomous_database_with_metadata`. + """ + return response, metadata + + def pre_update_exadb_vm_cluster( + self, + request: oracledatabase.UpdateExadbVmClusterRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + oracledatabase.UpdateExadbVmClusterRequest, + Sequence[Tuple[str, Union[str, bytes]]], + ]: + """Pre-rpc interceptor for update_exadb_vm_cluster + + Override in a subclass to manipulate the request or metadata + before they are sent to the OracleDatabase server. + """ + return request, metadata + + def post_update_exadb_vm_cluster( + self, response: operations_pb2.Operation + ) -> operations_pb2.Operation: + """Post-rpc interceptor for update_exadb_vm_cluster + + DEPRECATED. Please use the `post_update_exadb_vm_cluster_with_metadata` + interceptor instead. + + Override in a subclass to read or manipulate the response + after it is returned by the OracleDatabase server but before + it is returned to user code. This `post_update_exadb_vm_cluster` interceptor runs + before the `post_update_exadb_vm_cluster_with_metadata` interceptor. + """ + return response + + def post_update_exadb_vm_cluster_with_metadata( + self, + response: operations_pb2.Operation, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[operations_pb2.Operation, Sequence[Tuple[str, Union[str, bytes]]]]: + """Post-rpc interceptor for update_exadb_vm_cluster + + Override in a subclass to read or manipulate the response or metadata after it + is returned by the OracleDatabase server but before it is returned to user code. + + We recommend only using this `post_update_exadb_vm_cluster_with_metadata` + interceptor in new development instead of the `post_update_exadb_vm_cluster` interceptor. + When both interceptors are used, this `post_update_exadb_vm_cluster_with_metadata` interceptor runs after the + `post_update_exadb_vm_cluster` interceptor. The (possibly modified) response returned by + `post_update_exadb_vm_cluster` will be passed to + `post_update_exadb_vm_cluster_with_metadata`. + """ + return response, metadata + + def pre_get_location( + self, + request: locations_pb2.GetLocationRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + locations_pb2.GetLocationRequest, Sequence[Tuple[str, Union[str, bytes]]] + ]: + """Pre-rpc interceptor for get_location + + Override in a subclass to manipulate the request or metadata + before they are sent to the OracleDatabase server. + """ + return request, metadata + + def post_get_location( + self, response: locations_pb2.Location + ) -> locations_pb2.Location: + """Post-rpc interceptor for get_location + + Override in a subclass to manipulate the response + after it is returned by the OracleDatabase server but before + it is returned to user code. + """ + return response + + def pre_list_locations( + self, + request: locations_pb2.ListLocationsRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + locations_pb2.ListLocationsRequest, Sequence[Tuple[str, Union[str, bytes]]] + ]: + """Pre-rpc interceptor for list_locations + + Override in a subclass to manipulate the request or metadata + before they are sent to the OracleDatabase server. + """ + return request, metadata + + def post_list_locations( + self, response: locations_pb2.ListLocationsResponse + ) -> locations_pb2.ListLocationsResponse: + """Post-rpc interceptor for list_locations + + Override in a subclass to manipulate the response + after it is returned by the OracleDatabase server but before + it is returned to user code. + """ + return response + + def pre_cancel_operation( + self, + request: operations_pb2.CancelOperationRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + operations_pb2.CancelOperationRequest, Sequence[Tuple[str, Union[str, bytes]]] + ]: + """Pre-rpc interceptor for cancel_operation + + Override in a subclass to manipulate the request or metadata + before they are sent to the OracleDatabase server. + """ + return request, metadata + + def post_cancel_operation(self, response: None) -> None: + """Post-rpc interceptor for cancel_operation + + Override in a subclass to manipulate the response + after it is returned by the OracleDatabase server but before + it is returned to user code. + """ + return response + + def pre_delete_operation( + self, + request: operations_pb2.DeleteOperationRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + operations_pb2.DeleteOperationRequest, Sequence[Tuple[str, Union[str, bytes]]] + ]: + """Pre-rpc interceptor for delete_operation + + Override in a subclass to manipulate the request or metadata + before they are sent to the OracleDatabase server. + """ + return request, metadata + + def post_delete_operation(self, response: None) -> None: + """Post-rpc interceptor for delete_operation + + Override in a subclass to manipulate the response + after it is returned by the OracleDatabase server but before + it is returned to user code. + """ + return response + + def pre_get_operation( + self, + request: operations_pb2.GetOperationRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + operations_pb2.GetOperationRequest, Sequence[Tuple[str, Union[str, bytes]]] + ]: + """Pre-rpc interceptor for get_operation + + Override in a subclass to manipulate the request or metadata + before they are sent to the OracleDatabase server. + """ + return request, metadata + + def post_get_operation( + self, response: operations_pb2.Operation + ) -> operations_pb2.Operation: + """Post-rpc interceptor for get_operation + + Override in a subclass to manipulate the response + after it is returned by the OracleDatabase server but before + it is returned to user code. + """ + return response + + def pre_list_operations( + self, + request: operations_pb2.ListOperationsRequest, + metadata: Sequence[Tuple[str, Union[str, bytes]]], + ) -> Tuple[ + operations_pb2.ListOperationsRequest, Sequence[Tuple[str, Union[str, bytes]]] + ]: + """Pre-rpc interceptor for list_operations + + Override in a subclass to manipulate the request or metadata + before they are sent to the OracleDatabase server. + """ + return request, metadata + + def post_list_operations( + self, response: operations_pb2.ListOperationsResponse + ) -> operations_pb2.ListOperationsResponse: + """Post-rpc interceptor for list_operations + + Override in a subclass to manipulate the response + after it is returned by the OracleDatabase server but before + it is returned to user code. + """ + return response + + +@dataclasses.dataclass +class OracleDatabaseRestStub: + _session: AuthorizedSession + _host: str + _interceptor: OracleDatabaseRestInterceptor + + +class OracleDatabaseRestTransport(_BaseOracleDatabaseRestTransport): + """REST backend synchronous transport for OracleDatabase. + + Service describing handlers for resources + + This class defines the same methods as the primary client, so the + primary client can load the underlying transport implementation + and call it. + + It sends JSON representations of protocol buffers over HTTP/1.1 + """ + + def __init__( + self, + *, + host: str = "oracledatabase.googleapis.com", + credentials: Optional[ga_credentials.Credentials] = None, + credentials_file: Optional[str] = None, + scopes: Optional[Sequence[str]] = None, + client_cert_source_for_mtls: Optional[Callable[[], Tuple[bytes, bytes]]] = None, + quota_project_id: Optional[str] = None, + client_info: gapic_v1.client_info.ClientInfo = DEFAULT_CLIENT_INFO, + always_use_jwt_access: Optional[bool] = False, + url_scheme: str = "https", + interceptor: Optional[OracleDatabaseRestInterceptor] = None, + api_audience: Optional[str] = None, + ) -> None: + """Instantiate the transport. + + Args: + host (Optional[str]): + The hostname to connect to (default: 'oracledatabase.googleapis.com'). + credentials (Optional[google.auth.credentials.Credentials]): The + authorization credentials to attach to requests. These + credentials identify the application to the service; if none + are specified, the client will attempt to ascertain the + credentials from the environment. + + credentials_file (Optional[str]): Deprecated. A file with credentials that can + be loaded with :func:`google.auth.load_credentials_from_file`. + This argument is ignored if ``channel`` is provided. This argument will be + removed in the next major version of this library. + scopes (Optional(Sequence[str])): A list of scopes. This argument is + ignored if ``channel`` is provided. + client_cert_source_for_mtls (Callable[[], Tuple[bytes, bytes]]): Client + certificate to configure mutual TLS HTTP channel. It is ignored + if ``channel`` is provided. + quota_project_id (Optional[str]): An optional project to use for billing + and quota. + client_info (google.api_core.gapic_v1.client_info.ClientInfo): + The client info used to send a user-agent string along with + API requests. If ``None``, then default info will be used. + Generally, you only need to set this if you are developing + your own client library. + always_use_jwt_access (Optional[bool]): Whether self signed JWT should + be used for service account credentials. + url_scheme: the protocol scheme for the API endpoint. Normally + "https", but for testing or local servers, + "http" can be specified. + interceptor (Optional[OracleDatabaseRestInterceptor]): Interceptor used + to manipulate requests, request metadata, and responses. + api_audience (Optional[str]): The intended audience for the API calls + to the service that will be set when using certain 3rd party + authentication flows. Audience is typically a resource identifier. + If not set, the host value will be used as a default. + """ + # Run the base constructor + # TODO(yon-mg): resolve other ctor params i.e. scopes, quota, etc. + # TODO: When custom host (api_endpoint) is set, `scopes` must *also* be set on the + # credentials object + super().__init__( + host=host, + credentials=credentials, + client_info=client_info, + always_use_jwt_access=always_use_jwt_access, + url_scheme=url_scheme, + api_audience=api_audience, + ) + self._session = AuthorizedSession( + self._credentials, default_host=self.DEFAULT_HOST + ) + self._operations_client: Optional[operations_v1.AbstractOperationsClient] = None + if client_cert_source_for_mtls: + self._session.configure_mtls_channel(client_cert_source_for_mtls) + self._interceptor = interceptor or OracleDatabaseRestInterceptor() + self._prep_wrapped_messages(client_info) + + @property + def operations_client(self) -> operations_v1.AbstractOperationsClient: + """Create the client designed to process long-running operations. + + This property caches on the instance; repeated calls return the same + client. + """ + # Only create a new client if we do not already have one. + if self._operations_client is None: + http_options: Dict[str, List[Dict[str, str]]] = { + "google.longrunning.Operations.CancelOperation": [ + { + "method": "post", + "uri": "/v1/{name=projects/*/locations/*/operations/*}:cancel", + "body": "*", + }, + ], + "google.longrunning.Operations.DeleteOperation": [ + { + "method": "delete", + "uri": "/v1/{name=projects/*/locations/*/operations/*}", + }, + ], + "google.longrunning.Operations.GetOperation": [ + { + "method": "get", + "uri": "/v1/{name=projects/*/locations/*/operations/*}", + }, + ], + "google.longrunning.Operations.ListOperations": [ + { + "method": "get", + "uri": "/v1/{name=projects/*/locations/*}/operations", + }, + ], + } + + rest_transport = operations_v1.OperationsRestTransport( + host=self._host, + # use the credentials which are saved + credentials=self._credentials, + scopes=self._scopes, + http_options=http_options, + path_prefix="v1", + ) + + self._operations_client = operations_v1.AbstractOperationsClient( + transport=rest_transport + ) + + # Return the client from cache. + return self._operations_client + + class _CreateAutonomousDatabase( + _BaseOracleDatabaseRestTransport._BaseCreateAutonomousDatabase, + OracleDatabaseRestStub, + ): + def __hash__(self): + return hash("OracleDatabaseRestTransport.CreateAutonomousDatabase") + + @staticmethod + def _get_response( + host, + metadata, + query_params, + session, + timeout, + transcoded_request, + body=None, + ): + uri = transcoded_request["uri"] + method = transcoded_request["method"] + headers = dict(metadata) + headers["Content-Type"] = "application/json" + response = getattr(session, method)( + "{host}{uri}".format(host=host, uri=uri), + timeout=timeout, + headers=headers, + params=rest_helpers.flatten_query_params(query_params, strict=True), + data=body, + ) + return response + + def __call__( + self, + request: oracledatabase.CreateAutonomousDatabaseRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operations_pb2.Operation: + r"""Call the create autonomous + database method over HTTP. + + Args: + request (~.oracledatabase.CreateAutonomousDatabaseRequest): + The request object. The request for ``AutonomousDatabase.Create``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. + + """ + + http_options = _BaseOracleDatabaseRestTransport._BaseCreateAutonomousDatabase._get_http_options() + + request, metadata = self._interceptor.pre_create_autonomous_database( + request, metadata + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseCreateAutonomousDatabase._get_transcoded_request( + http_options, request + ) + + body = _BaseOracleDatabaseRestTransport._BaseCreateAutonomousDatabase._get_request_body_json( + transcoded_request + ) + + # Jsonify the query params + query_params = _BaseOracleDatabaseRestTransport._BaseCreateAutonomousDatabase._get_query_params_json( + transcoded_request + ) + + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + request_url = "{host}{uri}".format( + host=self._host, uri=transcoded_request["uri"] + ) + method = transcoded_request["method"] + try: + request_payload = type(request).to_json(request) + except: + request_payload = None + http_request = { + "payload": request_payload, + "requestMethod": method, + "requestUrl": request_url, + "headers": dict(metadata), + } + _LOGGER.debug( + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.CreateAutonomousDatabase", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "CreateAutonomousDatabase", + "httpRequest": http_request, + "metadata": http_request["headers"], + }, + ) + + # Send the request + response = ( + OracleDatabaseRestTransport._CreateAutonomousDatabase._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + body, + ) + ) + + # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception + # subclass. + if response.status_code >= 400: + raise core_exceptions.from_http_response(response) + + # Return the response + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_create_autonomous_database(resp) + response_metadata = [(k, str(v)) for k, v in response.headers.items()] + resp, _ = self._interceptor.post_create_autonomous_database_with_metadata( + resp, response_metadata + ) + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + try: + response_payload = json_format.MessageToJson(resp) + except: + response_payload = None + http_response = { + "payload": response_payload, + "headers": dict(response.headers), + "status": response.status_code, + } + _LOGGER.debug( + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.create_autonomous_database", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "CreateAutonomousDatabase", + "metadata": http_response["headers"], + "httpResponse": http_response, + }, + ) + return resp + + class _CreateCloudExadataInfrastructure( + _BaseOracleDatabaseRestTransport._BaseCreateCloudExadataInfrastructure, + OracleDatabaseRestStub, + ): + def __hash__(self): + return hash("OracleDatabaseRestTransport.CreateCloudExadataInfrastructure") + + @staticmethod + def _get_response( + host, + metadata, + query_params, + session, + timeout, + transcoded_request, + body=None, + ): + uri = transcoded_request["uri"] + method = transcoded_request["method"] + headers = dict(metadata) + headers["Content-Type"] = "application/json" + response = getattr(session, method)( + "{host}{uri}".format(host=host, uri=uri), + timeout=timeout, + headers=headers, + params=rest_helpers.flatten_query_params(query_params, strict=True), + data=body, + ) + return response + + def __call__( + self, + request: oracledatabase.CreateCloudExadataInfrastructureRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operations_pb2.Operation: + r"""Call the create cloud exadata + infrastructure method over HTTP. + + Args: + request (~.oracledatabase.CreateCloudExadataInfrastructureRequest): + The request object. The request for ``CloudExadataInfrastructure.Create``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. + + """ + + http_options = _BaseOracleDatabaseRestTransport._BaseCreateCloudExadataInfrastructure._get_http_options() + + request, metadata = ( + self._interceptor.pre_create_cloud_exadata_infrastructure( + request, metadata + ) + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseCreateCloudExadataInfrastructure._get_transcoded_request( + http_options, request + ) + + body = _BaseOracleDatabaseRestTransport._BaseCreateCloudExadataInfrastructure._get_request_body_json( + transcoded_request + ) + + # Jsonify the query params + query_params = _BaseOracleDatabaseRestTransport._BaseCreateCloudExadataInfrastructure._get_query_params_json( + transcoded_request + ) + + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + request_url = "{host}{uri}".format( + host=self._host, uri=transcoded_request["uri"] + ) + method = transcoded_request["method"] + try: + request_payload = type(request).to_json(request) + except: + request_payload = None + http_request = { + "payload": request_payload, + "requestMethod": method, + "requestUrl": request_url, + "headers": dict(metadata), + } + _LOGGER.debug( + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.CreateCloudExadataInfrastructure", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "CreateCloudExadataInfrastructure", + "httpRequest": http_request, + "metadata": http_request["headers"], + }, + ) + + # Send the request + response = OracleDatabaseRestTransport._CreateCloudExadataInfrastructure._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + body, + ) + + # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception + # subclass. + if response.status_code >= 400: + raise core_exceptions.from_http_response(response) + + # Return the response + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_create_cloud_exadata_infrastructure(resp) + response_metadata = [(k, str(v)) for k, v in response.headers.items()] + resp, _ = ( + self._interceptor.post_create_cloud_exadata_infrastructure_with_metadata( + resp, response_metadata + ) + ) + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + try: + response_payload = json_format.MessageToJson(resp) + except: + response_payload = None + http_response = { + "payload": response_payload, + "headers": dict(response.headers), + "status": response.status_code, + } + _LOGGER.debug( + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.create_cloud_exadata_infrastructure", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "CreateCloudExadataInfrastructure", + "metadata": http_response["headers"], + "httpResponse": http_response, + }, + ) + return resp + + class _CreateCloudVmCluster( + _BaseOracleDatabaseRestTransport._BaseCreateCloudVmCluster, + OracleDatabaseRestStub, + ): + def __hash__(self): + return hash("OracleDatabaseRestTransport.CreateCloudVmCluster") + + @staticmethod + def _get_response( + host, + metadata, + query_params, + session, + timeout, + transcoded_request, + body=None, + ): + uri = transcoded_request["uri"] + method = transcoded_request["method"] + headers = dict(metadata) + headers["Content-Type"] = "application/json" + response = getattr(session, method)( + "{host}{uri}".format(host=host, uri=uri), + timeout=timeout, + headers=headers, + params=rest_helpers.flatten_query_params(query_params, strict=True), + data=body, + ) + return response + + def __call__( + self, + request: oracledatabase.CreateCloudVmClusterRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operations_pb2.Operation: + r"""Call the create cloud vm cluster method over HTTP. + + Args: + request (~.oracledatabase.CreateCloudVmClusterRequest): + The request object. The request for ``CloudVmCluster.Create``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. + + """ + + http_options = _BaseOracleDatabaseRestTransport._BaseCreateCloudVmCluster._get_http_options() + + request, metadata = self._interceptor.pre_create_cloud_vm_cluster( + request, metadata + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseCreateCloudVmCluster._get_transcoded_request( + http_options, request + ) + + body = _BaseOracleDatabaseRestTransport._BaseCreateCloudVmCluster._get_request_body_json( + transcoded_request + ) + + # Jsonify the query params + query_params = _BaseOracleDatabaseRestTransport._BaseCreateCloudVmCluster._get_query_params_json( + transcoded_request + ) + + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + request_url = "{host}{uri}".format( + host=self._host, uri=transcoded_request["uri"] + ) + method = transcoded_request["method"] + try: + request_payload = type(request).to_json(request) + except: + request_payload = None + http_request = { + "payload": request_payload, + "requestMethod": method, + "requestUrl": request_url, + "headers": dict(metadata), + } + _LOGGER.debug( + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.CreateCloudVmCluster", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "CreateCloudVmCluster", + "httpRequest": http_request, + "metadata": http_request["headers"], + }, + ) + + # Send the request + response = OracleDatabaseRestTransport._CreateCloudVmCluster._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + body, + ) + + # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception + # subclass. + if response.status_code >= 400: + raise core_exceptions.from_http_response(response) + + # Return the response + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_create_cloud_vm_cluster(resp) + response_metadata = [(k, str(v)) for k, v in response.headers.items()] + resp, _ = self._interceptor.post_create_cloud_vm_cluster_with_metadata( + resp, response_metadata + ) + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + try: + response_payload = json_format.MessageToJson(resp) + except: + response_payload = None + http_response = { + "payload": response_payload, + "headers": dict(response.headers), + "status": response.status_code, + } + _LOGGER.debug( + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.create_cloud_vm_cluster", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "CreateCloudVmCluster", + "metadata": http_response["headers"], + "httpResponse": http_response, + }, + ) + return resp + + class _CreateDbSystem( + _BaseOracleDatabaseRestTransport._BaseCreateDbSystem, OracleDatabaseRestStub + ): + def __hash__(self): + return hash("OracleDatabaseRestTransport.CreateDbSystem") + + @staticmethod + def _get_response( + host, + metadata, + query_params, + session, + timeout, + transcoded_request, + body=None, + ): + uri = transcoded_request["uri"] + method = transcoded_request["method"] + headers = dict(metadata) + headers["Content-Type"] = "application/json" + response = getattr(session, method)( + "{host}{uri}".format(host=host, uri=uri), + timeout=timeout, + headers=headers, + params=rest_helpers.flatten_query_params(query_params, strict=True), + data=body, + ) + return response + + def __call__( + self, + request: gco_db_system.CreateDbSystemRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operations_pb2.Operation: + r"""Call the create db system method over HTTP. + + Args: + request (~.gco_db_system.CreateDbSystemRequest): + The request object. The request for ``DbSystem.Create``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. + + """ + + http_options = ( + _BaseOracleDatabaseRestTransport._BaseCreateDbSystem._get_http_options() + ) + + request, metadata = self._interceptor.pre_create_db_system( + request, metadata + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseCreateDbSystem._get_transcoded_request( + http_options, request + ) + + body = _BaseOracleDatabaseRestTransport._BaseCreateDbSystem._get_request_body_json( + transcoded_request + ) + + # Jsonify the query params + query_params = _BaseOracleDatabaseRestTransport._BaseCreateDbSystem._get_query_params_json( + transcoded_request + ) + + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + request_url = "{host}{uri}".format( + host=self._host, uri=transcoded_request["uri"] + ) + method = transcoded_request["method"] + try: + request_payload = type(request).to_json(request) + except: + request_payload = None + http_request = { + "payload": request_payload, + "requestMethod": method, + "requestUrl": request_url, + "headers": dict(metadata), + } + _LOGGER.debug( + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.CreateDbSystem", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "CreateDbSystem", + "httpRequest": http_request, + "metadata": http_request["headers"], + }, + ) + + # Send the request + response = OracleDatabaseRestTransport._CreateDbSystem._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + body, + ) + + # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception + # subclass. + if response.status_code >= 400: + raise core_exceptions.from_http_response(response) + + # Return the response + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_create_db_system(resp) + response_metadata = [(k, str(v)) for k, v in response.headers.items()] + resp, _ = self._interceptor.post_create_db_system_with_metadata( + resp, response_metadata + ) + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + try: + response_payload = json_format.MessageToJson(resp) + except: + response_payload = None + http_response = { + "payload": response_payload, + "headers": dict(response.headers), + "status": response.status_code, + } + _LOGGER.debug( + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.create_db_system", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "CreateDbSystem", + "metadata": http_response["headers"], + "httpResponse": http_response, + }, + ) + return resp + + class _CreateExadbVmCluster( + _BaseOracleDatabaseRestTransport._BaseCreateExadbVmCluster, + OracleDatabaseRestStub, + ): + def __hash__(self): + return hash("OracleDatabaseRestTransport.CreateExadbVmCluster") + + @staticmethod + def _get_response( + host, + metadata, + query_params, + session, + timeout, + transcoded_request, + body=None, + ): + uri = transcoded_request["uri"] + method = transcoded_request["method"] + headers = dict(metadata) + headers["Content-Type"] = "application/json" + response = getattr(session, method)( + "{host}{uri}".format(host=host, uri=uri), + timeout=timeout, + headers=headers, + params=rest_helpers.flatten_query_params(query_params, strict=True), + data=body, + ) + return response + + def __call__( + self, + request: oracledatabase.CreateExadbVmClusterRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operations_pb2.Operation: + r"""Call the create exadb vm cluster method over HTTP. + + Args: + request (~.oracledatabase.CreateExadbVmClusterRequest): + The request object. The request for ``ExadbVmCluster.Create``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. + + """ + + http_options = _BaseOracleDatabaseRestTransport._BaseCreateExadbVmCluster._get_http_options() + + request, metadata = self._interceptor.pre_create_exadb_vm_cluster( + request, metadata + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseCreateExadbVmCluster._get_transcoded_request( + http_options, request + ) + + body = _BaseOracleDatabaseRestTransport._BaseCreateExadbVmCluster._get_request_body_json( + transcoded_request + ) + + # Jsonify the query params + query_params = _BaseOracleDatabaseRestTransport._BaseCreateExadbVmCluster._get_query_params_json( + transcoded_request + ) + + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + request_url = "{host}{uri}".format( + host=self._host, uri=transcoded_request["uri"] + ) + method = transcoded_request["method"] + try: + request_payload = type(request).to_json(request) + except: + request_payload = None + http_request = { + "payload": request_payload, + "requestMethod": method, + "requestUrl": request_url, + "headers": dict(metadata), + } + _LOGGER.debug( + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.CreateExadbVmCluster", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "CreateExadbVmCluster", + "httpRequest": http_request, + "metadata": http_request["headers"], + }, + ) + + # Send the request + response = OracleDatabaseRestTransport._CreateExadbVmCluster._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + body, + ) + + # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception + # subclass. + if response.status_code >= 400: + raise core_exceptions.from_http_response(response) + + # Return the response + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_create_exadb_vm_cluster(resp) + response_metadata = [(k, str(v)) for k, v in response.headers.items()] + resp, _ = self._interceptor.post_create_exadb_vm_cluster_with_metadata( + resp, response_metadata + ) + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + try: + response_payload = json_format.MessageToJson(resp) + except: + response_payload = None + http_response = { + "payload": response_payload, + "headers": dict(response.headers), + "status": response.status_code, + } + _LOGGER.debug( + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.create_exadb_vm_cluster", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "CreateExadbVmCluster", + "metadata": http_response["headers"], + "httpResponse": http_response, + }, + ) + return resp + + class _CreateExascaleDbStorageVault( + _BaseOracleDatabaseRestTransport._BaseCreateExascaleDbStorageVault, + OracleDatabaseRestStub, + ): + def __hash__(self): + return hash("OracleDatabaseRestTransport.CreateExascaleDbStorageVault") + + @staticmethod + def _get_response( + host, + metadata, + query_params, + session, + timeout, + transcoded_request, + body=None, + ): + uri = transcoded_request["uri"] + method = transcoded_request["method"] + headers = dict(metadata) + headers["Content-Type"] = "application/json" + response = getattr(session, method)( + "{host}{uri}".format(host=host, uri=uri), + timeout=timeout, + headers=headers, + params=rest_helpers.flatten_query_params(query_params, strict=True), + data=body, + ) + return response + + def __call__( + self, + request: gco_exascale_db_storage_vault.CreateExascaleDbStorageVaultRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operations_pb2.Operation: + r"""Call the create exascale db + storage vault method over HTTP. + + Args: + request (~.gco_exascale_db_storage_vault.CreateExascaleDbStorageVaultRequest): + The request object. The request for ``ExascaleDbStorageVault.Create``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. + + """ + + http_options = _BaseOracleDatabaseRestTransport._BaseCreateExascaleDbStorageVault._get_http_options() + + request, metadata = self._interceptor.pre_create_exascale_db_storage_vault( + request, metadata + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseCreateExascaleDbStorageVault._get_transcoded_request( + http_options, request + ) + + body = _BaseOracleDatabaseRestTransport._BaseCreateExascaleDbStorageVault._get_request_body_json( + transcoded_request + ) + + # Jsonify the query params + query_params = _BaseOracleDatabaseRestTransport._BaseCreateExascaleDbStorageVault._get_query_params_json( + transcoded_request + ) + + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + request_url = "{host}{uri}".format( + host=self._host, uri=transcoded_request["uri"] + ) + method = transcoded_request["method"] + try: + request_payload = type(request).to_json(request) + except: + request_payload = None + http_request = { + "payload": request_payload, + "requestMethod": method, + "requestUrl": request_url, + "headers": dict(metadata), + } + _LOGGER.debug( + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.CreateExascaleDbStorageVault", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "CreateExascaleDbStorageVault", + "httpRequest": http_request, + "metadata": http_request["headers"], + }, + ) + + # Send the request + response = ( + OracleDatabaseRestTransport._CreateExascaleDbStorageVault._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + body, + ) + ) + + # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception + # subclass. + if response.status_code >= 400: + raise core_exceptions.from_http_response(response) + + # Return the response + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_create_exascale_db_storage_vault(resp) + response_metadata = [(k, str(v)) for k, v in response.headers.items()] + resp, _ = ( + self._interceptor.post_create_exascale_db_storage_vault_with_metadata( + resp, response_metadata + ) + ) + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + try: + response_payload = json_format.MessageToJson(resp) + except: + response_payload = None + http_response = { + "payload": response_payload, + "headers": dict(response.headers), + "status": response.status_code, + } + _LOGGER.debug( + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.create_exascale_db_storage_vault", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "CreateExascaleDbStorageVault", + "metadata": http_response["headers"], + "httpResponse": http_response, + }, + ) + return resp + + class _CreateGoldengateConnection( + _BaseOracleDatabaseRestTransport._BaseCreateGoldengateConnection, + OracleDatabaseRestStub, + ): + def __hash__(self): + return hash("OracleDatabaseRestTransport.CreateGoldengateConnection") + + @staticmethod + def _get_response( + host, + metadata, + query_params, + session, + timeout, + transcoded_request, + body=None, + ): + uri = transcoded_request["uri"] + method = transcoded_request["method"] + headers = dict(metadata) + headers["Content-Type"] = "application/json" + response = getattr(session, method)( + "{host}{uri}".format(host=host, uri=uri), + timeout=timeout, + headers=headers, + params=rest_helpers.flatten_query_params(query_params, strict=True), + data=body, + ) + return response + + def __call__( + self, + request: gco_goldengate_connection.CreateGoldengateConnectionRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operations_pb2.Operation: + r"""Call the create goldengate + connection method over HTTP. + + Args: + request (~.gco_goldengate_connection.CreateGoldengateConnectionRequest): + The request object. The request for ``GoldengateConnection.Create``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. + + """ + + http_options = _BaseOracleDatabaseRestTransport._BaseCreateGoldengateConnection._get_http_options() + + request, metadata = self._interceptor.pre_create_goldengate_connection( + request, metadata + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseCreateGoldengateConnection._get_transcoded_request( + http_options, request + ) + + body = _BaseOracleDatabaseRestTransport._BaseCreateGoldengateConnection._get_request_body_json( + transcoded_request + ) + + # Jsonify the query params + query_params = _BaseOracleDatabaseRestTransport._BaseCreateGoldengateConnection._get_query_params_json( + transcoded_request + ) + + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + request_url = "{host}{uri}".format( + host=self._host, uri=transcoded_request["uri"] + ) + method = transcoded_request["method"] + try: + request_payload = type(request).to_json(request) + except: + request_payload = None + http_request = { + "payload": request_payload, + "requestMethod": method, + "requestUrl": request_url, + "headers": dict(metadata), + } + _LOGGER.debug( + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.CreateGoldengateConnection", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "CreateGoldengateConnection", + "httpRequest": http_request, + "metadata": http_request["headers"], + }, + ) + + # Send the request + response = ( + OracleDatabaseRestTransport._CreateGoldengateConnection._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + body, + ) + ) + + # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception + # subclass. + if response.status_code >= 400: + raise core_exceptions.from_http_response(response) + + # Return the response + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_create_goldengate_connection(resp) + response_metadata = [(k, str(v)) for k, v in response.headers.items()] + resp, _ = self._interceptor.post_create_goldengate_connection_with_metadata( + resp, response_metadata + ) + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + try: + response_payload = json_format.MessageToJson(resp) + except: + response_payload = None + http_response = { + "payload": response_payload, + "headers": dict(response.headers), + "status": response.status_code, + } + _LOGGER.debug( + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.create_goldengate_connection", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "CreateGoldengateConnection", + "metadata": http_response["headers"], + "httpResponse": http_response, + }, + ) + return resp + + class _CreateGoldengateConnectionAssignment( + _BaseOracleDatabaseRestTransport._BaseCreateGoldengateConnectionAssignment, + OracleDatabaseRestStub, + ): + def __hash__(self): + return hash( + "OracleDatabaseRestTransport.CreateGoldengateConnectionAssignment" + ) + + @staticmethod + def _get_response( + host, + metadata, + query_params, + session, + timeout, + transcoded_request, + body=None, + ): + uri = transcoded_request["uri"] + method = transcoded_request["method"] + headers = dict(metadata) + headers["Content-Type"] = "application/json" + response = getattr(session, method)( + "{host}{uri}".format(host=host, uri=uri), + timeout=timeout, + headers=headers, + params=rest_helpers.flatten_query_params(query_params, strict=True), + data=body, + ) + return response + + def __call__( + self, + request: gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operations_pb2.Operation: + r"""Call the create goldengate + connection assignment method over HTTP. + + Args: + request (~.gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest): + The request object. Request message for creating a + GoldengateConnectionAssignment. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. + + """ + + http_options = _BaseOracleDatabaseRestTransport._BaseCreateGoldengateConnectionAssignment._get_http_options() + + request, metadata = ( + self._interceptor.pre_create_goldengate_connection_assignment( + request, metadata + ) + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseCreateGoldengateConnectionAssignment._get_transcoded_request( + http_options, request + ) + + body = _BaseOracleDatabaseRestTransport._BaseCreateGoldengateConnectionAssignment._get_request_body_json( + transcoded_request + ) + + # Jsonify the query params + query_params = _BaseOracleDatabaseRestTransport._BaseCreateGoldengateConnectionAssignment._get_query_params_json( + transcoded_request + ) + + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + request_url = "{host}{uri}".format( + host=self._host, uri=transcoded_request["uri"] + ) + method = transcoded_request["method"] + try: + request_payload = type(request).to_json(request) + except: + request_payload = None + http_request = { + "payload": request_payload, + "requestMethod": method, + "requestUrl": request_url, + "headers": dict(metadata), + } + _LOGGER.debug( + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.CreateGoldengateConnectionAssignment", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "CreateGoldengateConnectionAssignment", + "httpRequest": http_request, + "metadata": http_request["headers"], + }, + ) + + # Send the request + response = OracleDatabaseRestTransport._CreateGoldengateConnectionAssignment._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + body, + ) + + # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception + # subclass. + if response.status_code >= 400: + raise core_exceptions.from_http_response(response) + + # Return the response + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_create_goldengate_connection_assignment(resp) + response_metadata = [(k, str(v)) for k, v in response.headers.items()] + resp, _ = ( + self._interceptor.post_create_goldengate_connection_assignment_with_metadata( + resp, response_metadata + ) + ) + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + try: + response_payload = json_format.MessageToJson(resp) + except: + response_payload = None + http_response = { + "payload": response_payload, + "headers": dict(response.headers), + "status": response.status_code, + } + _LOGGER.debug( + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.create_goldengate_connection_assignment", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "CreateGoldengateConnectionAssignment", + "metadata": http_response["headers"], + "httpResponse": http_response, + }, + ) + return resp + + class _CreateGoldengateDeployment( + _BaseOracleDatabaseRestTransport._BaseCreateGoldengateDeployment, + OracleDatabaseRestStub, + ): + def __hash__(self): + return hash("OracleDatabaseRestTransport.CreateGoldengateDeployment") + + @staticmethod + def _get_response( + host, + metadata, + query_params, + session, + timeout, + transcoded_request, + body=None, + ): + uri = transcoded_request["uri"] + method = transcoded_request["method"] + headers = dict(metadata) + headers["Content-Type"] = "application/json" + response = getattr(session, method)( + "{host}{uri}".format(host=host, uri=uri), + timeout=timeout, + headers=headers, + params=rest_helpers.flatten_query_params(query_params, strict=True), + data=body, + ) + return response + + def __call__( + self, + request: gco_goldengate_deployment.CreateGoldengateDeploymentRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operations_pb2.Operation: + r"""Call the create goldengate + deployment method over HTTP. + + Args: + request (~.gco_goldengate_deployment.CreateGoldengateDeploymentRequest): + The request object. The request for ``GoldengateDeployment.Create``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. + + """ + + http_options = _BaseOracleDatabaseRestTransport._BaseCreateGoldengateDeployment._get_http_options() + + request, metadata = self._interceptor.pre_create_goldengate_deployment( + request, metadata + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseCreateGoldengateDeployment._get_transcoded_request( + http_options, request + ) + + body = _BaseOracleDatabaseRestTransport._BaseCreateGoldengateDeployment._get_request_body_json( + transcoded_request + ) + + # Jsonify the query params + query_params = _BaseOracleDatabaseRestTransport._BaseCreateGoldengateDeployment._get_query_params_json( + transcoded_request + ) + + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + request_url = "{host}{uri}".format( + host=self._host, uri=transcoded_request["uri"] + ) + method = transcoded_request["method"] + try: + request_payload = type(request).to_json(request) + except: + request_payload = None + http_request = { + "payload": request_payload, + "requestMethod": method, + "requestUrl": request_url, + "headers": dict(metadata), + } + _LOGGER.debug( + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.CreateGoldengateDeployment", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "CreateGoldengateDeployment", + "httpRequest": http_request, + "metadata": http_request["headers"], + }, + ) + + # Send the request + response = ( + OracleDatabaseRestTransport._CreateGoldengateDeployment._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + body, + ) + ) + + # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception + # subclass. + if response.status_code >= 400: + raise core_exceptions.from_http_response(response) + + # Return the response + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_create_goldengate_deployment(resp) + response_metadata = [(k, str(v)) for k, v in response.headers.items()] + resp, _ = self._interceptor.post_create_goldengate_deployment_with_metadata( + resp, response_metadata + ) + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + try: + response_payload = json_format.MessageToJson(resp) + except: + response_payload = None + http_response = { + "payload": response_payload, + "headers": dict(response.headers), + "status": response.status_code, + } + _LOGGER.debug( + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.create_goldengate_deployment", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "CreateGoldengateDeployment", + "metadata": http_response["headers"], + "httpResponse": http_response, + }, + ) + return resp + + class _CreateOdbNetwork( + _BaseOracleDatabaseRestTransport._BaseCreateOdbNetwork, OracleDatabaseRestStub + ): + def __hash__(self): + return hash("OracleDatabaseRestTransport.CreateOdbNetwork") + + @staticmethod + def _get_response( + host, + metadata, + query_params, + session, + timeout, + transcoded_request, + body=None, + ): + uri = transcoded_request["uri"] + method = transcoded_request["method"] + headers = dict(metadata) + headers["Content-Type"] = "application/json" + response = getattr(session, method)( + "{host}{uri}".format(host=host, uri=uri), + timeout=timeout, + headers=headers, + params=rest_helpers.flatten_query_params(query_params, strict=True), + data=body, + ) + return response + + def __call__( + self, + request: gco_odb_network.CreateOdbNetworkRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operations_pb2.Operation: + r"""Call the create odb network method over HTTP. + + Args: + request (~.gco_odb_network.CreateOdbNetworkRequest): + The request object. The request for ``OdbNetwork.Create``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. + + """ + + http_options = _BaseOracleDatabaseRestTransport._BaseCreateOdbNetwork._get_http_options() + + request, metadata = self._interceptor.pre_create_odb_network( + request, metadata + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseCreateOdbNetwork._get_transcoded_request( + http_options, request + ) + + body = _BaseOracleDatabaseRestTransport._BaseCreateOdbNetwork._get_request_body_json( + transcoded_request + ) + + # Jsonify the query params + query_params = _BaseOracleDatabaseRestTransport._BaseCreateOdbNetwork._get_query_params_json( + transcoded_request + ) + + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + request_url = "{host}{uri}".format( + host=self._host, uri=transcoded_request["uri"] + ) + method = transcoded_request["method"] + try: + request_payload = type(request).to_json(request) + except: + request_payload = None + http_request = { + "payload": request_payload, + "requestMethod": method, + "requestUrl": request_url, + "headers": dict(metadata), + } + _LOGGER.debug( + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.CreateOdbNetwork", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "CreateOdbNetwork", + "httpRequest": http_request, + "metadata": http_request["headers"], + }, + ) + + # Send the request + response = OracleDatabaseRestTransport._CreateOdbNetwork._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + body, + ) + + # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception + # subclass. + if response.status_code >= 400: + raise core_exceptions.from_http_response(response) + + # Return the response + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_create_odb_network(resp) + response_metadata = [(k, str(v)) for k, v in response.headers.items()] + resp, _ = self._interceptor.post_create_odb_network_with_metadata( + resp, response_metadata + ) + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + try: + response_payload = json_format.MessageToJson(resp) + except: + response_payload = None + http_response = { + "payload": response_payload, + "headers": dict(response.headers), + "status": response.status_code, + } + _LOGGER.debug( + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.create_odb_network", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "CreateOdbNetwork", + "metadata": http_response["headers"], + "httpResponse": http_response, + }, + ) + return resp + + class _CreateOdbSubnet( + _BaseOracleDatabaseRestTransport._BaseCreateOdbSubnet, OracleDatabaseRestStub + ): + def __hash__(self): + return hash("OracleDatabaseRestTransport.CreateOdbSubnet") + + @staticmethod + def _get_response( + host, + metadata, + query_params, + session, + timeout, + transcoded_request, + body=None, + ): + uri = transcoded_request["uri"] + method = transcoded_request["method"] + headers = dict(metadata) + headers["Content-Type"] = "application/json" + response = getattr(session, method)( + "{host}{uri}".format(host=host, uri=uri), + timeout=timeout, + headers=headers, + params=rest_helpers.flatten_query_params(query_params, strict=True), + data=body, + ) + return response + + def __call__( + self, + request: gco_odb_subnet.CreateOdbSubnetRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operations_pb2.Operation: + r"""Call the create odb subnet method over HTTP. + + Args: + request (~.gco_odb_subnet.CreateOdbSubnetRequest): + The request object. The request for ``OdbSubnet.Create``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. + + """ + + http_options = _BaseOracleDatabaseRestTransport._BaseCreateOdbSubnet._get_http_options() + + request, metadata = self._interceptor.pre_create_odb_subnet( + request, metadata + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseCreateOdbSubnet._get_transcoded_request( + http_options, request + ) + + body = _BaseOracleDatabaseRestTransport._BaseCreateOdbSubnet._get_request_body_json( + transcoded_request + ) + + # Jsonify the query params + query_params = _BaseOracleDatabaseRestTransport._BaseCreateOdbSubnet._get_query_params_json( + transcoded_request + ) + + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + request_url = "{host}{uri}".format( + host=self._host, uri=transcoded_request["uri"] + ) + method = transcoded_request["method"] + try: + request_payload = type(request).to_json(request) + except: + request_payload = None + http_request = { + "payload": request_payload, + "requestMethod": method, + "requestUrl": request_url, + "headers": dict(metadata), + } + _LOGGER.debug( + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.CreateOdbSubnet", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "CreateOdbSubnet", + "httpRequest": http_request, + "metadata": http_request["headers"], + }, + ) + + # Send the request + response = OracleDatabaseRestTransport._CreateOdbSubnet._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + body, + ) + + # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception + # subclass. + if response.status_code >= 400: + raise core_exceptions.from_http_response(response) + + # Return the response + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_create_odb_subnet(resp) + response_metadata = [(k, str(v)) for k, v in response.headers.items()] + resp, _ = self._interceptor.post_create_odb_subnet_with_metadata( + resp, response_metadata + ) + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + try: + response_payload = json_format.MessageToJson(resp) + except: + response_payload = None + http_response = { + "payload": response_payload, + "headers": dict(response.headers), + "status": response.status_code, + } + _LOGGER.debug( + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.create_odb_subnet", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "CreateOdbSubnet", + "metadata": http_response["headers"], + "httpResponse": http_response, + }, + ) + return resp + + class _DeleteAutonomousDatabase( + _BaseOracleDatabaseRestTransport._BaseDeleteAutonomousDatabase, + OracleDatabaseRestStub, + ): + def __hash__(self): + return hash("OracleDatabaseRestTransport.DeleteAutonomousDatabase") + + @staticmethod + def _get_response( + host, + metadata, + query_params, + session, + timeout, + transcoded_request, + body=None, + ): + uri = transcoded_request["uri"] + method = transcoded_request["method"] + headers = dict(metadata) + headers["Content-Type"] = "application/json" + response = getattr(session, method)( + "{host}{uri}".format(host=host, uri=uri), + timeout=timeout, + headers=headers, + params=rest_helpers.flatten_query_params(query_params, strict=True), + ) + return response + + def __call__( + self, + request: oracledatabase.DeleteAutonomousDatabaseRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operations_pb2.Operation: + r"""Call the delete autonomous + database method over HTTP. + + Args: + request (~.oracledatabase.DeleteAutonomousDatabaseRequest): + The request object. The request for ``AutonomousDatabase.Delete``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. + + """ + + http_options = _BaseOracleDatabaseRestTransport._BaseDeleteAutonomousDatabase._get_http_options() + + request, metadata = self._interceptor.pre_delete_autonomous_database( + request, metadata + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseDeleteAutonomousDatabase._get_transcoded_request( + http_options, request + ) + + # Jsonify the query params + query_params = _BaseOracleDatabaseRestTransport._BaseDeleteAutonomousDatabase._get_query_params_json( + transcoded_request + ) + + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + request_url = "{host}{uri}".format( + host=self._host, uri=transcoded_request["uri"] + ) + method = transcoded_request["method"] + try: + request_payload = type(request).to_json(request) + except: + request_payload = None + http_request = { + "payload": request_payload, + "requestMethod": method, + "requestUrl": request_url, + "headers": dict(metadata), + } + _LOGGER.debug( + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.DeleteAutonomousDatabase", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "DeleteAutonomousDatabase", + "httpRequest": http_request, + "metadata": http_request["headers"], + }, + ) + + # Send the request + response = ( + OracleDatabaseRestTransport._DeleteAutonomousDatabase._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + ) + ) + + # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception + # subclass. + if response.status_code >= 400: + raise core_exceptions.from_http_response(response) + + # Return the response + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_delete_autonomous_database(resp) + response_metadata = [(k, str(v)) for k, v in response.headers.items()] + resp, _ = self._interceptor.post_delete_autonomous_database_with_metadata( + resp, response_metadata + ) + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + try: + response_payload = json_format.MessageToJson(resp) + except: + response_payload = None + http_response = { + "payload": response_payload, + "headers": dict(response.headers), + "status": response.status_code, + } + _LOGGER.debug( + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_autonomous_database", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "DeleteAutonomousDatabase", + "metadata": http_response["headers"], + "httpResponse": http_response, + }, + ) + return resp + + class _DeleteCloudExadataInfrastructure( + _BaseOracleDatabaseRestTransport._BaseDeleteCloudExadataInfrastructure, + OracleDatabaseRestStub, + ): + def __hash__(self): + return hash("OracleDatabaseRestTransport.DeleteCloudExadataInfrastructure") + + @staticmethod + def _get_response( + host, + metadata, + query_params, + session, + timeout, + transcoded_request, + body=None, + ): + uri = transcoded_request["uri"] + method = transcoded_request["method"] + headers = dict(metadata) + headers["Content-Type"] = "application/json" + response = getattr(session, method)( + "{host}{uri}".format(host=host, uri=uri), + timeout=timeout, + headers=headers, + params=rest_helpers.flatten_query_params(query_params, strict=True), + ) + return response + + def __call__( + self, + request: oracledatabase.DeleteCloudExadataInfrastructureRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operations_pb2.Operation: + r"""Call the delete cloud exadata + infrastructure method over HTTP. + + Args: + request (~.oracledatabase.DeleteCloudExadataInfrastructureRequest): + The request object. The request for ``CloudExadataInfrastructure.Delete``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. + + """ + + http_options = _BaseOracleDatabaseRestTransport._BaseDeleteCloudExadataInfrastructure._get_http_options() + + request, metadata = ( + self._interceptor.pre_delete_cloud_exadata_infrastructure( + request, metadata + ) + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseDeleteCloudExadataInfrastructure._get_transcoded_request( + http_options, request + ) + + # Jsonify the query params + query_params = _BaseOracleDatabaseRestTransport._BaseDeleteCloudExadataInfrastructure._get_query_params_json( + transcoded_request + ) + + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + request_url = "{host}{uri}".format( + host=self._host, uri=transcoded_request["uri"] + ) + method = transcoded_request["method"] + try: + request_payload = type(request).to_json(request) + except: + request_payload = None + http_request = { + "payload": request_payload, + "requestMethod": method, + "requestUrl": request_url, + "headers": dict(metadata), + } + _LOGGER.debug( + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.DeleteCloudExadataInfrastructure", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "DeleteCloudExadataInfrastructure", + "httpRequest": http_request, + "metadata": http_request["headers"], + }, + ) + + # Send the request + response = OracleDatabaseRestTransport._DeleteCloudExadataInfrastructure._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + ) + + # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception + # subclass. + if response.status_code >= 400: + raise core_exceptions.from_http_response(response) + + # Return the response + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_delete_cloud_exadata_infrastructure(resp) + response_metadata = [(k, str(v)) for k, v in response.headers.items()] + resp, _ = ( + self._interceptor.post_delete_cloud_exadata_infrastructure_with_metadata( + resp, response_metadata + ) + ) + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + try: + response_payload = json_format.MessageToJson(resp) + except: + response_payload = None + http_response = { + "payload": response_payload, + "headers": dict(response.headers), + "status": response.status_code, + } + _LOGGER.debug( + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_cloud_exadata_infrastructure", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "DeleteCloudExadataInfrastructure", + "metadata": http_response["headers"], + "httpResponse": http_response, + }, + ) + return resp + + class _DeleteCloudVmCluster( + _BaseOracleDatabaseRestTransport._BaseDeleteCloudVmCluster, + OracleDatabaseRestStub, + ): + def __hash__(self): + return hash("OracleDatabaseRestTransport.DeleteCloudVmCluster") + + @staticmethod + def _get_response( + host, + metadata, + query_params, + session, + timeout, + transcoded_request, + body=None, + ): + uri = transcoded_request["uri"] + method = transcoded_request["method"] + headers = dict(metadata) + headers["Content-Type"] = "application/json" + response = getattr(session, method)( + "{host}{uri}".format(host=host, uri=uri), + timeout=timeout, + headers=headers, + params=rest_helpers.flatten_query_params(query_params, strict=True), + ) + return response + + def __call__( + self, + request: oracledatabase.DeleteCloudVmClusterRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operations_pb2.Operation: + r"""Call the delete cloud vm cluster method over HTTP. + + Args: + request (~.oracledatabase.DeleteCloudVmClusterRequest): + The request object. The request for ``CloudVmCluster.Delete``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. + + """ + + http_options = _BaseOracleDatabaseRestTransport._BaseDeleteCloudVmCluster._get_http_options() + + request, metadata = self._interceptor.pre_delete_cloud_vm_cluster( + request, metadata + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseDeleteCloudVmCluster._get_transcoded_request( + http_options, request + ) + + # Jsonify the query params + query_params = _BaseOracleDatabaseRestTransport._BaseDeleteCloudVmCluster._get_query_params_json( + transcoded_request + ) + + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + request_url = "{host}{uri}".format( + host=self._host, uri=transcoded_request["uri"] + ) + method = transcoded_request["method"] + try: + request_payload = type(request).to_json(request) + except: + request_payload = None + http_request = { + "payload": request_payload, + "requestMethod": method, + "requestUrl": request_url, + "headers": dict(metadata), + } + _LOGGER.debug( + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.DeleteCloudVmCluster", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "DeleteCloudVmCluster", + "httpRequest": http_request, + "metadata": http_request["headers"], + }, + ) + + # Send the request + response = OracleDatabaseRestTransport._DeleteCloudVmCluster._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + ) + + # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception + # subclass. + if response.status_code >= 400: + raise core_exceptions.from_http_response(response) + + # Return the response + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_delete_cloud_vm_cluster(resp) + response_metadata = [(k, str(v)) for k, v in response.headers.items()] + resp, _ = self._interceptor.post_delete_cloud_vm_cluster_with_metadata( + resp, response_metadata + ) + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + try: + response_payload = json_format.MessageToJson(resp) + except: + response_payload = None + http_response = { + "payload": response_payload, + "headers": dict(response.headers), + "status": response.status_code, + } + _LOGGER.debug( + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_cloud_vm_cluster", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "DeleteCloudVmCluster", + "metadata": http_response["headers"], + "httpResponse": http_response, + }, + ) + return resp + + class _DeleteDbSystem( + _BaseOracleDatabaseRestTransport._BaseDeleteDbSystem, OracleDatabaseRestStub + ): + def __hash__(self): + return hash("OracleDatabaseRestTransport.DeleteDbSystem") + + @staticmethod + def _get_response( + host, + metadata, + query_params, + session, + timeout, + transcoded_request, + body=None, + ): + uri = transcoded_request["uri"] + method = transcoded_request["method"] + headers = dict(metadata) + headers["Content-Type"] = "application/json" + response = getattr(session, method)( + "{host}{uri}".format(host=host, uri=uri), + timeout=timeout, + headers=headers, + params=rest_helpers.flatten_query_params(query_params, strict=True), + ) + return response + + def __call__( + self, + request: db_system.DeleteDbSystemRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operations_pb2.Operation: + r"""Call the delete db system method over HTTP. + + Args: + request (~.db_system.DeleteDbSystemRequest): + The request object. The request for ``DbSystem.Delete``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. + + """ + + http_options = ( + _BaseOracleDatabaseRestTransport._BaseDeleteDbSystem._get_http_options() + ) + + request, metadata = self._interceptor.pre_delete_db_system( + request, metadata + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseDeleteDbSystem._get_transcoded_request( + http_options, request + ) + + # Jsonify the query params + query_params = _BaseOracleDatabaseRestTransport._BaseDeleteDbSystem._get_query_params_json( + transcoded_request + ) + + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + request_url = "{host}{uri}".format( + host=self._host, uri=transcoded_request["uri"] + ) + method = transcoded_request["method"] + try: + request_payload = type(request).to_json(request) + except: + request_payload = None + http_request = { + "payload": request_payload, + "requestMethod": method, + "requestUrl": request_url, + "headers": dict(metadata), + } + _LOGGER.debug( + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.DeleteDbSystem", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "DeleteDbSystem", + "httpRequest": http_request, + "metadata": http_request["headers"], + }, + ) + + # Send the request + response = OracleDatabaseRestTransport._DeleteDbSystem._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + ) + + # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception + # subclass. + if response.status_code >= 400: + raise core_exceptions.from_http_response(response) + + # Return the response + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_delete_db_system(resp) + response_metadata = [(k, str(v)) for k, v in response.headers.items()] + resp, _ = self._interceptor.post_delete_db_system_with_metadata( + resp, response_metadata + ) + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + try: + response_payload = json_format.MessageToJson(resp) + except: + response_payload = None + http_response = { + "payload": response_payload, + "headers": dict(response.headers), + "status": response.status_code, + } + _LOGGER.debug( + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_db_system", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "DeleteDbSystem", + "metadata": http_response["headers"], + "httpResponse": http_response, + }, + ) + return resp + + class _DeleteExadbVmCluster( + _BaseOracleDatabaseRestTransport._BaseDeleteExadbVmCluster, + OracleDatabaseRestStub, + ): + def __hash__(self): + return hash("OracleDatabaseRestTransport.DeleteExadbVmCluster") + + @staticmethod + def _get_response( + host, + metadata, + query_params, + session, + timeout, + transcoded_request, + body=None, + ): + uri = transcoded_request["uri"] + method = transcoded_request["method"] + headers = dict(metadata) + headers["Content-Type"] = "application/json" + response = getattr(session, method)( + "{host}{uri}".format(host=host, uri=uri), + timeout=timeout, + headers=headers, + params=rest_helpers.flatten_query_params(query_params, strict=True), + ) + return response + + def __call__( + self, + request: oracledatabase.DeleteExadbVmClusterRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operations_pb2.Operation: + r"""Call the delete exadb vm cluster method over HTTP. + + Args: + request (~.oracledatabase.DeleteExadbVmClusterRequest): + The request object. The request for ``ExadbVmCluster.Delete``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. + + """ + + http_options = _BaseOracleDatabaseRestTransport._BaseDeleteExadbVmCluster._get_http_options() + + request, metadata = self._interceptor.pre_delete_exadb_vm_cluster( + request, metadata + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseDeleteExadbVmCluster._get_transcoded_request( + http_options, request + ) + + # Jsonify the query params + query_params = _BaseOracleDatabaseRestTransport._BaseDeleteExadbVmCluster._get_query_params_json( + transcoded_request + ) + + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + request_url = "{host}{uri}".format( + host=self._host, uri=transcoded_request["uri"] + ) + method = transcoded_request["method"] + try: + request_payload = type(request).to_json(request) + except: + request_payload = None + http_request = { + "payload": request_payload, + "requestMethod": method, + "requestUrl": request_url, + "headers": dict(metadata), + } + _LOGGER.debug( + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.DeleteExadbVmCluster", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "DeleteExadbVmCluster", + "httpRequest": http_request, + "metadata": http_request["headers"], + }, + ) + + # Send the request + response = OracleDatabaseRestTransport._DeleteExadbVmCluster._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + ) + + # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception + # subclass. + if response.status_code >= 400: + raise core_exceptions.from_http_response(response) + + # Return the response + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_delete_exadb_vm_cluster(resp) + response_metadata = [(k, str(v)) for k, v in response.headers.items()] + resp, _ = self._interceptor.post_delete_exadb_vm_cluster_with_metadata( + resp, response_metadata + ) + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + try: + response_payload = json_format.MessageToJson(resp) + except: + response_payload = None + http_response = { + "payload": response_payload, + "headers": dict(response.headers), + "status": response.status_code, + } + _LOGGER.debug( + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_exadb_vm_cluster", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "DeleteExadbVmCluster", + "metadata": http_response["headers"], + "httpResponse": http_response, + }, + ) + return resp + + class _DeleteExascaleDbStorageVault( + _BaseOracleDatabaseRestTransport._BaseDeleteExascaleDbStorageVault, + OracleDatabaseRestStub, + ): + def __hash__(self): + return hash("OracleDatabaseRestTransport.DeleteExascaleDbStorageVault") + + @staticmethod + def _get_response( + host, + metadata, + query_params, + session, + timeout, + transcoded_request, + body=None, + ): + uri = transcoded_request["uri"] + method = transcoded_request["method"] + headers = dict(metadata) + headers["Content-Type"] = "application/json" + response = getattr(session, method)( + "{host}{uri}".format(host=host, uri=uri), + timeout=timeout, + headers=headers, + params=rest_helpers.flatten_query_params(query_params, strict=True), + ) + return response + + def __call__( + self, + request: exascale_db_storage_vault.DeleteExascaleDbStorageVaultRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operations_pb2.Operation: + r"""Call the delete exascale db + storage vault method over HTTP. + + Args: + request (~.exascale_db_storage_vault.DeleteExascaleDbStorageVaultRequest): + The request object. The request message for + ``ExascaleDbStorageVault.Delete``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. + + """ + + http_options = _BaseOracleDatabaseRestTransport._BaseDeleteExascaleDbStorageVault._get_http_options() + + request, metadata = self._interceptor.pre_delete_exascale_db_storage_vault( + request, metadata + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseDeleteExascaleDbStorageVault._get_transcoded_request( + http_options, request + ) + + # Jsonify the query params + query_params = _BaseOracleDatabaseRestTransport._BaseDeleteExascaleDbStorageVault._get_query_params_json( + transcoded_request + ) + + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + request_url = "{host}{uri}".format( + host=self._host, uri=transcoded_request["uri"] + ) + method = transcoded_request["method"] + try: + request_payload = type(request).to_json(request) + except: + request_payload = None + http_request = { + "payload": request_payload, + "requestMethod": method, + "requestUrl": request_url, + "headers": dict(metadata), + } + _LOGGER.debug( + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.DeleteExascaleDbStorageVault", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "DeleteExascaleDbStorageVault", + "httpRequest": http_request, + "metadata": http_request["headers"], + }, + ) + + # Send the request + response = ( + OracleDatabaseRestTransport._DeleteExascaleDbStorageVault._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + ) + ) + + # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception + # subclass. + if response.status_code >= 400: + raise core_exceptions.from_http_response(response) + + # Return the response + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_delete_exascale_db_storage_vault(resp) + response_metadata = [(k, str(v)) for k, v in response.headers.items()] + resp, _ = ( + self._interceptor.post_delete_exascale_db_storage_vault_with_metadata( + resp, response_metadata + ) + ) + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + try: + response_payload = json_format.MessageToJson(resp) + except: + response_payload = None + http_response = { + "payload": response_payload, + "headers": dict(response.headers), + "status": response.status_code, + } + _LOGGER.debug( + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_exascale_db_storage_vault", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "DeleteExascaleDbStorageVault", + "metadata": http_response["headers"], + "httpResponse": http_response, + }, + ) + return resp + + class _DeleteGoldengateConnection( + _BaseOracleDatabaseRestTransport._BaseDeleteGoldengateConnection, + OracleDatabaseRestStub, + ): + def __hash__(self): + return hash("OracleDatabaseRestTransport.DeleteGoldengateConnection") + + @staticmethod + def _get_response( + host, + metadata, + query_params, + session, + timeout, + transcoded_request, + body=None, + ): + uri = transcoded_request["uri"] + method = transcoded_request["method"] + headers = dict(metadata) + headers["Content-Type"] = "application/json" + response = getattr(session, method)( + "{host}{uri}".format(host=host, uri=uri), + timeout=timeout, + headers=headers, + params=rest_helpers.flatten_query_params(query_params, strict=True), + ) + return response + + def __call__( + self, + request: goldengate_connection.DeleteGoldengateConnectionRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operations_pb2.Operation: + r"""Call the delete goldengate + connection method over HTTP. + + Args: + request (~.goldengate_connection.DeleteGoldengateConnectionRequest): + The request object. The request for ``GoldengateConnection.Delete``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. + + """ + + http_options = _BaseOracleDatabaseRestTransport._BaseDeleteGoldengateConnection._get_http_options() + + request, metadata = self._interceptor.pre_delete_goldengate_connection( + request, metadata + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseDeleteGoldengateConnection._get_transcoded_request( + http_options, request + ) + + # Jsonify the query params + query_params = _BaseOracleDatabaseRestTransport._BaseDeleteGoldengateConnection._get_query_params_json( + transcoded_request + ) + + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + request_url = "{host}{uri}".format( + host=self._host, uri=transcoded_request["uri"] + ) + method = transcoded_request["method"] + try: + request_payload = type(request).to_json(request) + except: + request_payload = None + http_request = { + "payload": request_payload, + "requestMethod": method, + "requestUrl": request_url, + "headers": dict(metadata), + } + _LOGGER.debug( + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.DeleteGoldengateConnection", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "DeleteGoldengateConnection", + "httpRequest": http_request, + "metadata": http_request["headers"], + }, + ) + + # Send the request + response = ( + OracleDatabaseRestTransport._DeleteGoldengateConnection._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + ) + ) + + # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception + # subclass. + if response.status_code >= 400: + raise core_exceptions.from_http_response(response) + + # Return the response + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_delete_goldengate_connection(resp) + response_metadata = [(k, str(v)) for k, v in response.headers.items()] + resp, _ = self._interceptor.post_delete_goldengate_connection_with_metadata( + resp, response_metadata + ) + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + try: + response_payload = json_format.MessageToJson(resp) + except: + response_payload = None + http_response = { + "payload": response_payload, + "headers": dict(response.headers), + "status": response.status_code, + } + _LOGGER.debug( + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_goldengate_connection", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "DeleteGoldengateConnection", + "metadata": http_response["headers"], + "httpResponse": http_response, + }, + ) + return resp + + class _DeleteGoldengateConnectionAssignment( + _BaseOracleDatabaseRestTransport._BaseDeleteGoldengateConnectionAssignment, + OracleDatabaseRestStub, + ): + def __hash__(self): + return hash( + "OracleDatabaseRestTransport.DeleteGoldengateConnectionAssignment" + ) + + @staticmethod + def _get_response( + host, + metadata, + query_params, + session, + timeout, + transcoded_request, + body=None, + ): + uri = transcoded_request["uri"] + method = transcoded_request["method"] + headers = dict(metadata) + headers["Content-Type"] = "application/json" + response = getattr(session, method)( + "{host}{uri}".format(host=host, uri=uri), + timeout=timeout, + headers=headers, + params=rest_helpers.flatten_query_params(query_params, strict=True), + ) + return response + + def __call__( + self, + request: goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operations_pb2.Operation: + r"""Call the delete goldengate + connection assignment method over HTTP. + + Args: + request (~.goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest): + The request object. Request message for deleting a + GoldengateConnectionAssignment. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. + + """ + + http_options = _BaseOracleDatabaseRestTransport._BaseDeleteGoldengateConnectionAssignment._get_http_options() + + request, metadata = ( + self._interceptor.pre_delete_goldengate_connection_assignment( + request, metadata + ) + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseDeleteGoldengateConnectionAssignment._get_transcoded_request( + http_options, request + ) + + # Jsonify the query params + query_params = _BaseOracleDatabaseRestTransport._BaseDeleteGoldengateConnectionAssignment._get_query_params_json( + transcoded_request + ) + + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + request_url = "{host}{uri}".format( + host=self._host, uri=transcoded_request["uri"] + ) + method = transcoded_request["method"] + try: + request_payload = type(request).to_json(request) + except: + request_payload = None + http_request = { + "payload": request_payload, + "requestMethod": method, + "requestUrl": request_url, + "headers": dict(metadata), + } + _LOGGER.debug( + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.DeleteGoldengateConnectionAssignment", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "DeleteGoldengateConnectionAssignment", + "httpRequest": http_request, + "metadata": http_request["headers"], + }, + ) + + # Send the request + response = OracleDatabaseRestTransport._DeleteGoldengateConnectionAssignment._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + ) + + # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception + # subclass. + if response.status_code >= 400: + raise core_exceptions.from_http_response(response) + + # Return the response + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_delete_goldengate_connection_assignment(resp) + response_metadata = [(k, str(v)) for k, v in response.headers.items()] + resp, _ = ( + self._interceptor.post_delete_goldengate_connection_assignment_with_metadata( + resp, response_metadata + ) + ) + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + try: + response_payload = json_format.MessageToJson(resp) + except: + response_payload = None + http_response = { + "payload": response_payload, + "headers": dict(response.headers), + "status": response.status_code, + } + _LOGGER.debug( + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_goldengate_connection_assignment", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "DeleteGoldengateConnectionAssignment", + "metadata": http_response["headers"], + "httpResponse": http_response, + }, + ) + return resp + + class _DeleteGoldengateDeployment( + _BaseOracleDatabaseRestTransport._BaseDeleteGoldengateDeployment, + OracleDatabaseRestStub, + ): + def __hash__(self): + return hash("OracleDatabaseRestTransport.DeleteGoldengateDeployment") + + @staticmethod + def _get_response( + host, + metadata, + query_params, + session, + timeout, + transcoded_request, + body=None, + ): + uri = transcoded_request["uri"] + method = transcoded_request["method"] + headers = dict(metadata) + headers["Content-Type"] = "application/json" + response = getattr(session, method)( + "{host}{uri}".format(host=host, uri=uri), + timeout=timeout, + headers=headers, + params=rest_helpers.flatten_query_params(query_params, strict=True), + ) + return response + + def __call__( + self, + request: goldengate_deployment.DeleteGoldengateDeploymentRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operations_pb2.Operation: + r"""Call the delete goldengate + deployment method over HTTP. + + Args: + request (~.goldengate_deployment.DeleteGoldengateDeploymentRequest): + The request object. The request for ``GoldengateDeployment.Delete``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. + + """ + + http_options = _BaseOracleDatabaseRestTransport._BaseDeleteGoldengateDeployment._get_http_options() + + request, metadata = self._interceptor.pre_delete_goldengate_deployment( + request, metadata + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseDeleteGoldengateDeployment._get_transcoded_request( + http_options, request + ) + + # Jsonify the query params + query_params = _BaseOracleDatabaseRestTransport._BaseDeleteGoldengateDeployment._get_query_params_json( + transcoded_request + ) + + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + request_url = "{host}{uri}".format( + host=self._host, uri=transcoded_request["uri"] + ) + method = transcoded_request["method"] + try: + request_payload = type(request).to_json(request) + except: + request_payload = None + http_request = { + "payload": request_payload, + "requestMethod": method, + "requestUrl": request_url, + "headers": dict(metadata), + } + _LOGGER.debug( + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.DeleteGoldengateDeployment", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "DeleteGoldengateDeployment", + "httpRequest": http_request, + "metadata": http_request["headers"], + }, + ) + + # Send the request + response = ( + OracleDatabaseRestTransport._DeleteGoldengateDeployment._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + ) + ) + + # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception + # subclass. + if response.status_code >= 400: + raise core_exceptions.from_http_response(response) + + # Return the response + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_delete_goldengate_deployment(resp) + response_metadata = [(k, str(v)) for k, v in response.headers.items()] + resp, _ = self._interceptor.post_delete_goldengate_deployment_with_metadata( + resp, response_metadata + ) + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + try: + response_payload = json_format.MessageToJson(resp) + except: + response_payload = None + http_response = { + "payload": response_payload, + "headers": dict(response.headers), + "status": response.status_code, + } + _LOGGER.debug( + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_goldengate_deployment", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "DeleteGoldengateDeployment", + "metadata": http_response["headers"], + "httpResponse": http_response, + }, + ) + return resp + + class _DeleteOdbNetwork( + _BaseOracleDatabaseRestTransport._BaseDeleteOdbNetwork, OracleDatabaseRestStub + ): + def __hash__(self): + return hash("OracleDatabaseRestTransport.DeleteOdbNetwork") + + @staticmethod + def _get_response( + host, + metadata, + query_params, + session, + timeout, + transcoded_request, + body=None, + ): + uri = transcoded_request["uri"] + method = transcoded_request["method"] + headers = dict(metadata) + headers["Content-Type"] = "application/json" + response = getattr(session, method)( + "{host}{uri}".format(host=host, uri=uri), + timeout=timeout, + headers=headers, + params=rest_helpers.flatten_query_params(query_params, strict=True), + ) + return response + + def __call__( + self, + request: odb_network.DeleteOdbNetworkRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operations_pb2.Operation: + r"""Call the delete odb network method over HTTP. + + Args: + request (~.odb_network.DeleteOdbNetworkRequest): + The request object. The request for ``OdbNetwork.Delete``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. + + """ + + http_options = _BaseOracleDatabaseRestTransport._BaseDeleteOdbNetwork._get_http_options() + + request, metadata = self._interceptor.pre_delete_odb_network( + request, metadata + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseDeleteOdbNetwork._get_transcoded_request( + http_options, request + ) + + # Jsonify the query params + query_params = _BaseOracleDatabaseRestTransport._BaseDeleteOdbNetwork._get_query_params_json( + transcoded_request + ) + + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + request_url = "{host}{uri}".format( + host=self._host, uri=transcoded_request["uri"] + ) + method = transcoded_request["method"] + try: + request_payload = type(request).to_json(request) + except: + request_payload = None + http_request = { + "payload": request_payload, + "requestMethod": method, + "requestUrl": request_url, + "headers": dict(metadata), + } + _LOGGER.debug( + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.DeleteOdbNetwork", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "DeleteOdbNetwork", + "httpRequest": http_request, + "metadata": http_request["headers"], + }, + ) + + # Send the request + response = OracleDatabaseRestTransport._DeleteOdbNetwork._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + ) + + # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception + # subclass. + if response.status_code >= 400: + raise core_exceptions.from_http_response(response) + + # Return the response + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_delete_odb_network(resp) + response_metadata = [(k, str(v)) for k, v in response.headers.items()] + resp, _ = self._interceptor.post_delete_odb_network_with_metadata( + resp, response_metadata + ) + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + try: + response_payload = json_format.MessageToJson(resp) + except: + response_payload = None + http_response = { + "payload": response_payload, + "headers": dict(response.headers), + "status": response.status_code, + } + _LOGGER.debug( + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_odb_network", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "DeleteOdbNetwork", + "metadata": http_response["headers"], + "httpResponse": http_response, + }, + ) + return resp + + class _DeleteOdbSubnet( + _BaseOracleDatabaseRestTransport._BaseDeleteOdbSubnet, OracleDatabaseRestStub + ): + def __hash__(self): + return hash("OracleDatabaseRestTransport.DeleteOdbSubnet") + + @staticmethod + def _get_response( + host, + metadata, + query_params, + session, + timeout, + transcoded_request, + body=None, + ): + uri = transcoded_request["uri"] + method = transcoded_request["method"] + headers = dict(metadata) + headers["Content-Type"] = "application/json" + response = getattr(session, method)( + "{host}{uri}".format(host=host, uri=uri), + timeout=timeout, + headers=headers, + params=rest_helpers.flatten_query_params(query_params, strict=True), + ) + return response + + def __call__( + self, + request: odb_subnet.DeleteOdbSubnetRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> operations_pb2.Operation: + r"""Call the delete odb subnet method over HTTP. + + Args: + request (~.odb_subnet.DeleteOdbSubnetRequest): + The request object. The request for ``OdbSubnet.Delete``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. + + """ + + http_options = _BaseOracleDatabaseRestTransport._BaseDeleteOdbSubnet._get_http_options() + + request, metadata = self._interceptor.pre_delete_odb_subnet( + request, metadata + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseDeleteOdbSubnet._get_transcoded_request( + http_options, request + ) + + # Jsonify the query params + query_params = _BaseOracleDatabaseRestTransport._BaseDeleteOdbSubnet._get_query_params_json( + transcoded_request + ) + + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + request_url = "{host}{uri}".format( + host=self._host, uri=transcoded_request["uri"] + ) + method = transcoded_request["method"] + try: + request_payload = type(request).to_json(request) + except: + request_payload = None + http_request = { + "payload": request_payload, + "requestMethod": method, + "requestUrl": request_url, + "headers": dict(metadata), + } + _LOGGER.debug( + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.DeleteOdbSubnet", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "DeleteOdbSubnet", + "httpRequest": http_request, + "metadata": http_request["headers"], }, - ], - } + ) - rest_transport = operations_v1.OperationsRestTransport( - host=self._host, - # use the credentials which are saved - credentials=self._credentials, - scopes=self._scopes, - http_options=http_options, - path_prefix="v1", + # Send the request + response = OracleDatabaseRestTransport._DeleteOdbSubnet._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, ) - self._operations_client = operations_v1.AbstractOperationsClient( - transport=rest_transport - ) + # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception + # subclass. + if response.status_code >= 400: + raise core_exceptions.from_http_response(response) - # Return the client from cache. - return self._operations_client + # Return the response + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) - class _CreateAutonomousDatabase( - _BaseOracleDatabaseRestTransport._BaseCreateAutonomousDatabase, + resp = self._interceptor.post_delete_odb_subnet(resp) + response_metadata = [(k, str(v)) for k, v in response.headers.items()] + resp, _ = self._interceptor.post_delete_odb_subnet_with_metadata( + resp, response_metadata + ) + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + try: + response_payload = json_format.MessageToJson(resp) + except: + response_payload = None + http_response = { + "payload": response_payload, + "headers": dict(response.headers), + "status": response.status_code, + } + _LOGGER.debug( + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_odb_subnet", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "DeleteOdbSubnet", + "metadata": http_response["headers"], + "httpResponse": http_response, + }, + ) + return resp + + class _FailoverAutonomousDatabase( + _BaseOracleDatabaseRestTransport._BaseFailoverAutonomousDatabase, OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.CreateAutonomousDatabase") + return hash("OracleDatabaseRestTransport.FailoverAutonomousDatabase") @staticmethod def _get_response( @@ -3768,18 +8476,19 @@ def _get_response( def __call__( self, - request: oracledatabase.CreateAutonomousDatabaseRequest, + request: oracledatabase.FailoverAutonomousDatabaseRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), ) -> operations_pb2.Operation: - r"""Call the create autonomous + r"""Call the failover autonomous database method over HTTP. Args: - request (~.oracledatabase.CreateAutonomousDatabaseRequest): - The request object. The request for ``AutonomousDatabase.Create``. + request (~.oracledatabase.FailoverAutonomousDatabaseRequest): + The request object. The request for + ``OracleDatabase.FailoverAutonomousDatabase``. retry (google.api_core.retry.Retry): Designation of what errors, if any, should be retried. timeout (float): The timeout for this request. @@ -3796,21 +8505,21 @@ def __call__( """ - http_options = _BaseOracleDatabaseRestTransport._BaseCreateAutonomousDatabase._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseFailoverAutonomousDatabase._get_http_options() - request, metadata = self._interceptor.pre_create_autonomous_database( + request, metadata = self._interceptor.pre_failover_autonomous_database( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseCreateAutonomousDatabase._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseFailoverAutonomousDatabase._get_transcoded_request( http_options, request ) - body = _BaseOracleDatabaseRestTransport._BaseCreateAutonomousDatabase._get_request_body_json( + body = _BaseOracleDatabaseRestTransport._BaseFailoverAutonomousDatabase._get_request_body_json( transcoded_request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseCreateAutonomousDatabase._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseFailoverAutonomousDatabase._get_query_params_json( transcoded_request ) @@ -3832,10 +8541,10 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.CreateAutonomousDatabase", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.FailoverAutonomousDatabase", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "CreateAutonomousDatabase", + "rpcName": "FailoverAutonomousDatabase", "httpRequest": http_request, "metadata": http_request["headers"], }, @@ -3843,7 +8552,7 @@ def __call__( # Send the request response = ( - OracleDatabaseRestTransport._CreateAutonomousDatabase._get_response( + OracleDatabaseRestTransport._FailoverAutonomousDatabase._get_response( self._host, metadata, query_params, @@ -3859,20 +8568,180 @@ def __call__( if response.status_code >= 400: raise core_exceptions.from_http_response(response) - # Return the response - resp = operations_pb2.Operation() - json_format.Parse(response.content, resp, ignore_unknown_fields=True) + # Return the response + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_failover_autonomous_database(resp) + response_metadata = [(k, str(v)) for k, v in response.headers.items()] + resp, _ = self._interceptor.post_failover_autonomous_database_with_metadata( + resp, response_metadata + ) + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + try: + response_payload = json_format.MessageToJson(resp) + except: + response_payload = None + http_response = { + "payload": response_payload, + "headers": dict(response.headers), + "status": response.status_code, + } + _LOGGER.debug( + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.failover_autonomous_database", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "FailoverAutonomousDatabase", + "metadata": http_response["headers"], + "httpResponse": http_response, + }, + ) + return resp + + class _GenerateAutonomousDatabaseWallet( + _BaseOracleDatabaseRestTransport._BaseGenerateAutonomousDatabaseWallet, + OracleDatabaseRestStub, + ): + def __hash__(self): + return hash("OracleDatabaseRestTransport.GenerateAutonomousDatabaseWallet") + + @staticmethod + def _get_response( + host, + metadata, + query_params, + session, + timeout, + transcoded_request, + body=None, + ): + uri = transcoded_request["uri"] + method = transcoded_request["method"] + headers = dict(metadata) + headers["Content-Type"] = "application/json" + response = getattr(session, method)( + "{host}{uri}".format(host=host, uri=uri), + timeout=timeout, + headers=headers, + params=rest_helpers.flatten_query_params(query_params, strict=True), + data=body, + ) + return response + + def __call__( + self, + request: oracledatabase.GenerateAutonomousDatabaseWalletRequest, + *, + retry: OptionalRetry = gapic_v1.method.DEFAULT, + timeout: Optional[float] = None, + metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), + ) -> oracledatabase.GenerateAutonomousDatabaseWalletResponse: + r"""Call the generate autonomous + database wallet method over HTTP. + + Args: + request (~.oracledatabase.GenerateAutonomousDatabaseWalletRequest): + The request object. The request for ``AutonomousDatabase.GenerateWallet``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.oracledatabase.GenerateAutonomousDatabaseWalletResponse: + The response for ``AutonomousDatabase.GenerateWallet``. + """ + + http_options = _BaseOracleDatabaseRestTransport._BaseGenerateAutonomousDatabaseWallet._get_http_options() + + request, metadata = ( + self._interceptor.pre_generate_autonomous_database_wallet( + request, metadata + ) + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseGenerateAutonomousDatabaseWallet._get_transcoded_request( + http_options, request + ) + + body = _BaseOracleDatabaseRestTransport._BaseGenerateAutonomousDatabaseWallet._get_request_body_json( + transcoded_request + ) + + # Jsonify the query params + query_params = _BaseOracleDatabaseRestTransport._BaseGenerateAutonomousDatabaseWallet._get_query_params_json( + transcoded_request + ) + + if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( + logging.DEBUG + ): # pragma: NO COVER + request_url = "{host}{uri}".format( + host=self._host, uri=transcoded_request["uri"] + ) + method = transcoded_request["method"] + try: + request_payload = type(request).to_json(request) + except: + request_payload = None + http_request = { + "payload": request_payload, + "requestMethod": method, + "requestUrl": request_url, + "headers": dict(metadata), + } + _LOGGER.debug( + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GenerateAutonomousDatabaseWallet", + extra={ + "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", + "rpcName": "GenerateAutonomousDatabaseWallet", + "httpRequest": http_request, + "metadata": http_request["headers"], + }, + ) + + # Send the request + response = OracleDatabaseRestTransport._GenerateAutonomousDatabaseWallet._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + body, + ) + + # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception + # subclass. + if response.status_code >= 400: + raise core_exceptions.from_http_response(response) + + # Return the response + resp = oracledatabase.GenerateAutonomousDatabaseWalletResponse() + pb_resp = oracledatabase.GenerateAutonomousDatabaseWalletResponse.pb(resp) + + json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_create_autonomous_database(resp) + resp = self._interceptor.post_generate_autonomous_database_wallet(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_create_autonomous_database_with_metadata( - resp, response_metadata + resp, _ = ( + self._interceptor.post_generate_autonomous_database_wallet_with_metadata( + resp, response_metadata + ) ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = json_format.MessageToJson(resp) + response_payload = ( + oracledatabase.GenerateAutonomousDatabaseWalletResponse.to_json( + response + ) + ) except: response_payload = None http_response = { @@ -3881,22 +8750,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.create_autonomous_database", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.generate_autonomous_database_wallet", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "CreateAutonomousDatabase", + "rpcName": "GenerateAutonomousDatabaseWallet", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _CreateCloudExadataInfrastructure( - _BaseOracleDatabaseRestTransport._BaseCreateCloudExadataInfrastructure, + class _GetAutonomousDatabase( + _BaseOracleDatabaseRestTransport._BaseGetAutonomousDatabase, OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.CreateCloudExadataInfrastructure") + return hash("OracleDatabaseRestTransport.GetAutonomousDatabase") @staticmethod def _get_response( @@ -3917,57 +8786,49 @@ def _get_response( timeout=timeout, headers=headers, params=rest_helpers.flatten_query_params(query_params, strict=True), - data=body, ) return response def __call__( self, - request: oracledatabase.CreateCloudExadataInfrastructureRequest, + request: oracledatabase.GetAutonomousDatabaseRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> operations_pb2.Operation: - r"""Call the create cloud exadata - infrastructure method over HTTP. + ) -> autonomous_database.AutonomousDatabase: + r"""Call the get autonomous database method over HTTP. - Args: - request (~.oracledatabase.CreateCloudExadataInfrastructureRequest): - The request object. The request for ``CloudExadataInfrastructure.Create``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + Args: + request (~.oracledatabase.GetAutonomousDatabaseRequest): + The request object. The request for ``AutonomousDatabase.Get``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. - Returns: - ~.operations_pb2.Operation: - This resource represents a - long-running operation that is the - result of a network API call. + Returns: + ~.autonomous_database.AutonomousDatabase: + Details of the Autonomous Database + resource. + https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/AutonomousDatabase/ """ - http_options = _BaseOracleDatabaseRestTransport._BaseCreateCloudExadataInfrastructure._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseGetAutonomousDatabase._get_http_options() - request, metadata = ( - self._interceptor.pre_create_cloud_exadata_infrastructure( - request, metadata - ) + request, metadata = self._interceptor.pre_get_autonomous_database( + request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseCreateCloudExadataInfrastructure._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseGetAutonomousDatabase._get_transcoded_request( http_options, request ) - body = _BaseOracleDatabaseRestTransport._BaseCreateCloudExadataInfrastructure._get_request_body_json( - transcoded_request - ) - # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseCreateCloudExadataInfrastructure._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseGetAutonomousDatabase._get_query_params_json( transcoded_request ) @@ -3989,24 +8850,23 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.CreateCloudExadataInfrastructure", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GetAutonomousDatabase", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "CreateCloudExadataInfrastructure", + "rpcName": "GetAutonomousDatabase", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._CreateCloudExadataInfrastructure._get_response( + response = OracleDatabaseRestTransport._GetAutonomousDatabase._get_response( self._host, metadata, query_params, self._session, timeout, transcoded_request, - body, ) # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception @@ -4015,21 +8875,23 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = operations_pb2.Operation() - json_format.Parse(response.content, resp, ignore_unknown_fields=True) + resp = autonomous_database.AutonomousDatabase() + pb_resp = autonomous_database.AutonomousDatabase.pb(resp) - resp = self._interceptor.post_create_cloud_exadata_infrastructure(resp) + json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_get_autonomous_database(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = ( - self._interceptor.post_create_cloud_exadata_infrastructure_with_metadata( - resp, response_metadata - ) + resp, _ = self._interceptor.post_get_autonomous_database_with_metadata( + resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = json_format.MessageToJson(resp) + response_payload = autonomous_database.AutonomousDatabase.to_json( + response + ) except: response_payload = None http_response = { @@ -4038,22 +8900,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.create_cloud_exadata_infrastructure", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.get_autonomous_database", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "CreateCloudExadataInfrastructure", + "rpcName": "GetAutonomousDatabase", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _CreateCloudVmCluster( - _BaseOracleDatabaseRestTransport._BaseCreateCloudVmCluster, + class _GetCloudExadataInfrastructure( + _BaseOracleDatabaseRestTransport._BaseGetCloudExadataInfrastructure, OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.CreateCloudVmCluster") + return hash("OracleDatabaseRestTransport.GetCloudExadataInfrastructure") @staticmethod def _get_response( @@ -4074,54 +8936,50 @@ def _get_response( timeout=timeout, headers=headers, params=rest_helpers.flatten_query_params(query_params, strict=True), - data=body, ) return response def __call__( self, - request: oracledatabase.CreateCloudVmClusterRequest, + request: oracledatabase.GetCloudExadataInfrastructureRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> operations_pb2.Operation: - r"""Call the create cloud vm cluster method over HTTP. + ) -> exadata_infra.CloudExadataInfrastructure: + r"""Call the get cloud exadata + infrastructure method over HTTP. - Args: - request (~.oracledatabase.CreateCloudVmClusterRequest): - The request object. The request for ``CloudVmCluster.Create``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + Args: + request (~.oracledatabase.GetCloudExadataInfrastructureRequest): + The request object. The request for ``CloudExadataInfrastructure.Get``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. - Returns: - ~.operations_pb2.Operation: - This resource represents a - long-running operation that is the - result of a network API call. + Returns: + ~.exadata_infra.CloudExadataInfrastructure: + Represents CloudExadataInfrastructure + resource. + https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/CloudExadataInfrastructure/ """ - http_options = _BaseOracleDatabaseRestTransport._BaseCreateCloudVmCluster._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseGetCloudExadataInfrastructure._get_http_options() - request, metadata = self._interceptor.pre_create_cloud_vm_cluster( + request, metadata = self._interceptor.pre_get_cloud_exadata_infrastructure( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseCreateCloudVmCluster._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseGetCloudExadataInfrastructure._get_transcoded_request( http_options, request ) - body = _BaseOracleDatabaseRestTransport._BaseCreateCloudVmCluster._get_request_body_json( - transcoded_request - ) - # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseCreateCloudVmCluster._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseGetCloudExadataInfrastructure._get_query_params_json( transcoded_request ) @@ -4143,24 +9001,23 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.CreateCloudVmCluster", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GetCloudExadataInfrastructure", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "CreateCloudVmCluster", + "rpcName": "GetCloudExadataInfrastructure", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._CreateCloudVmCluster._get_response( + response = OracleDatabaseRestTransport._GetCloudExadataInfrastructure._get_response( self._host, metadata, query_params, self._session, timeout, transcoded_request, - body, ) # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception @@ -4169,19 +9026,25 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = operations_pb2.Operation() - json_format.Parse(response.content, resp, ignore_unknown_fields=True) + resp = exadata_infra.CloudExadataInfrastructure() + pb_resp = exadata_infra.CloudExadataInfrastructure.pb(resp) - resp = self._interceptor.post_create_cloud_vm_cluster(resp) + json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_get_cloud_exadata_infrastructure(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_create_cloud_vm_cluster_with_metadata( - resp, response_metadata + resp, _ = ( + self._interceptor.post_get_cloud_exadata_infrastructure_with_metadata( + resp, response_metadata + ) ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = json_format.MessageToJson(resp) + response_payload = exadata_infra.CloudExadataInfrastructure.to_json( + response + ) except: response_payload = None http_response = { @@ -4190,21 +9053,21 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.create_cloud_vm_cluster", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.get_cloud_exadata_infrastructure", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "CreateCloudVmCluster", + "rpcName": "GetCloudExadataInfrastructure", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _CreateDbSystem( - _BaseOracleDatabaseRestTransport._BaseCreateDbSystem, OracleDatabaseRestStub + class _GetCloudVmCluster( + _BaseOracleDatabaseRestTransport._BaseGetCloudVmCluster, OracleDatabaseRestStub ): def __hash__(self): - return hash("OracleDatabaseRestTransport.CreateDbSystem") + return hash("OracleDatabaseRestTransport.GetCloudVmCluster") @staticmethod def _get_response( @@ -4225,23 +9088,22 @@ def _get_response( timeout=timeout, headers=headers, params=rest_helpers.flatten_query_params(query_params, strict=True), - data=body, ) return response def __call__( self, - request: gco_db_system.CreateDbSystemRequest, + request: oracledatabase.GetCloudVmClusterRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> operations_pb2.Operation: - r"""Call the create db system method over HTTP. + ) -> vm_cluster.CloudVmCluster: + r"""Call the get cloud vm cluster method over HTTP. Args: - request (~.gco_db_system.CreateDbSystemRequest): - The request object. The request for ``DbSystem.Create``. + request (~.oracledatabase.GetCloudVmClusterRequest): + The request object. The request for ``CloudVmCluster.Get``. retry (google.api_core.retry.Retry): Designation of what errors, if any, should be retried. timeout (float): The timeout for this request. @@ -4251,30 +9113,24 @@ def __call__( be of type `bytes`. Returns: - ~.operations_pb2.Operation: - This resource represents a - long-running operation that is the - result of a network API call. + ~.vm_cluster.CloudVmCluster: + Details of the Cloud VM Cluster + resource. + https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/CloudVmCluster/ """ - http_options = ( - _BaseOracleDatabaseRestTransport._BaseCreateDbSystem._get_http_options() - ) + http_options = _BaseOracleDatabaseRestTransport._BaseGetCloudVmCluster._get_http_options() - request, metadata = self._interceptor.pre_create_db_system( + request, metadata = self._interceptor.pre_get_cloud_vm_cluster( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseCreateDbSystem._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseGetCloudVmCluster._get_transcoded_request( http_options, request ) - body = _BaseOracleDatabaseRestTransport._BaseCreateDbSystem._get_request_body_json( - transcoded_request - ) - # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseCreateDbSystem._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseGetCloudVmCluster._get_query_params_json( transcoded_request ) @@ -4296,24 +9152,23 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.CreateDbSystem", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GetCloudVmCluster", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "CreateDbSystem", + "rpcName": "GetCloudVmCluster", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._CreateDbSystem._get_response( + response = OracleDatabaseRestTransport._GetCloudVmCluster._get_response( self._host, metadata, query_params, self._session, timeout, transcoded_request, - body, ) # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception @@ -4322,19 +9177,21 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = operations_pb2.Operation() - json_format.Parse(response.content, resp, ignore_unknown_fields=True) + resp = vm_cluster.CloudVmCluster() + pb_resp = vm_cluster.CloudVmCluster.pb(resp) - resp = self._interceptor.post_create_db_system(resp) + json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_get_cloud_vm_cluster(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_create_db_system_with_metadata( + resp, _ = self._interceptor.post_get_cloud_vm_cluster_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = json_format.MessageToJson(resp) + response_payload = vm_cluster.CloudVmCluster.to_json(response) except: response_payload = None http_response = { @@ -4343,22 +9200,21 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.create_db_system", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.get_cloud_vm_cluster", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "CreateDbSystem", + "rpcName": "GetCloudVmCluster", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _CreateExadbVmCluster( - _BaseOracleDatabaseRestTransport._BaseCreateExadbVmCluster, - OracleDatabaseRestStub, + class _GetDatabase( + _BaseOracleDatabaseRestTransport._BaseGetDatabase, OracleDatabaseRestStub ): def __hash__(self): - return hash("OracleDatabaseRestTransport.CreateExadbVmCluster") + return hash("OracleDatabaseRestTransport.GetDatabase") @staticmethod def _get_response( @@ -4379,23 +9235,22 @@ def _get_response( timeout=timeout, headers=headers, params=rest_helpers.flatten_query_params(query_params, strict=True), - data=body, ) return response def __call__( self, - request: oracledatabase.CreateExadbVmClusterRequest, + request: database.GetDatabaseRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> operations_pb2.Operation: - r"""Call the create exadb vm cluster method over HTTP. + ) -> database.Database: + r"""Call the get database method over HTTP. Args: - request (~.oracledatabase.CreateExadbVmClusterRequest): - The request object. The request for ``ExadbVmCluster.Create``. + request (~.database.GetDatabaseRequest): + The request object. The request for ``Database.Get``. retry (google.api_core.retry.Retry): Designation of what errors, if any, should be retried. timeout (float): The timeout for this request. @@ -4405,28 +9260,23 @@ def __call__( be of type `bytes`. Returns: - ~.operations_pb2.Operation: - This resource represents a - long-running operation that is the - result of a network API call. + ~.database.Database: + Details of the Database resource. + https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/Database/ """ - http_options = _BaseOracleDatabaseRestTransport._BaseCreateExadbVmCluster._get_http_options() - - request, metadata = self._interceptor.pre_create_exadb_vm_cluster( - request, metadata - ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseCreateExadbVmCluster._get_transcoded_request( - http_options, request + http_options = ( + _BaseOracleDatabaseRestTransport._BaseGetDatabase._get_http_options() ) - body = _BaseOracleDatabaseRestTransport._BaseCreateExadbVmCluster._get_request_body_json( - transcoded_request + request, metadata = self._interceptor.pre_get_database(request, metadata) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseGetDatabase._get_transcoded_request( + http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseCreateExadbVmCluster._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseGetDatabase._get_query_params_json( transcoded_request ) @@ -4448,24 +9298,23 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.CreateExadbVmCluster", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GetDatabase", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "CreateExadbVmCluster", + "rpcName": "GetDatabase", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._CreateExadbVmCluster._get_response( + response = OracleDatabaseRestTransport._GetDatabase._get_response( self._host, metadata, query_params, self._session, timeout, transcoded_request, - body, ) # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception @@ -4474,19 +9323,21 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = operations_pb2.Operation() - json_format.Parse(response.content, resp, ignore_unknown_fields=True) + resp = database.Database() + pb_resp = database.Database.pb(resp) - resp = self._interceptor.post_create_exadb_vm_cluster(resp) + json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_get_database(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_create_exadb_vm_cluster_with_metadata( + resp, _ = self._interceptor.post_get_database_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = json_format.MessageToJson(resp) + response_payload = database.Database.to_json(response) except: response_payload = None http_response = { @@ -4495,22 +9346,21 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.create_exadb_vm_cluster", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.get_database", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "CreateExadbVmCluster", + "rpcName": "GetDatabase", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _CreateExascaleDbStorageVault( - _BaseOracleDatabaseRestTransport._BaseCreateExascaleDbStorageVault, - OracleDatabaseRestStub, + class _GetDbSystem( + _BaseOracleDatabaseRestTransport._BaseGetDbSystem, OracleDatabaseRestStub ): def __hash__(self): - return hash("OracleDatabaseRestTransport.CreateExascaleDbStorageVault") + return hash("OracleDatabaseRestTransport.GetDbSystem") @staticmethod def _get_response( @@ -4531,55 +9381,49 @@ def _get_response( timeout=timeout, headers=headers, params=rest_helpers.flatten_query_params(query_params, strict=True), - data=body, ) return response def __call__( self, - request: gco_exascale_db_storage_vault.CreateExascaleDbStorageVaultRequest, + request: db_system.GetDbSystemRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> operations_pb2.Operation: - r"""Call the create exascale db - storage vault method over HTTP. + ) -> db_system.DbSystem: + r"""Call the get db system method over HTTP. - Args: - request (~.gco_exascale_db_storage_vault.CreateExascaleDbStorageVaultRequest): - The request object. The request for ``ExascaleDbStorageVault.Create``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + Args: + request (~.db_system.GetDbSystemRequest): + The request object. The request for ``DbSystem.Get``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. - Returns: - ~.operations_pb2.Operation: - This resource represents a - long-running operation that is the - result of a network API call. + Returns: + ~.db_system.DbSystem: + Details of the DbSystem (BaseDB) + resource. + https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/DbSystem/ """ - http_options = _BaseOracleDatabaseRestTransport._BaseCreateExascaleDbStorageVault._get_http_options() - - request, metadata = self._interceptor.pre_create_exascale_db_storage_vault( - request, metadata - ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseCreateExascaleDbStorageVault._get_transcoded_request( - http_options, request + http_options = ( + _BaseOracleDatabaseRestTransport._BaseGetDbSystem._get_http_options() ) - body = _BaseOracleDatabaseRestTransport._BaseCreateExascaleDbStorageVault._get_request_body_json( - transcoded_request + request, metadata = self._interceptor.pre_get_db_system(request, metadata) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseGetDbSystem._get_transcoded_request( + http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseCreateExascaleDbStorageVault._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseGetDbSystem._get_query_params_json( transcoded_request ) @@ -4601,26 +9445,23 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.CreateExascaleDbStorageVault", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GetDbSystem", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "CreateExascaleDbStorageVault", + "rpcName": "GetDbSystem", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = ( - OracleDatabaseRestTransport._CreateExascaleDbStorageVault._get_response( - self._host, - metadata, - query_params, - self._session, - timeout, - transcoded_request, - body, - ) + response = OracleDatabaseRestTransport._GetDbSystem._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, ) # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception @@ -4629,21 +9470,21 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = operations_pb2.Operation() - json_format.Parse(response.content, resp, ignore_unknown_fields=True) + resp = db_system.DbSystem() + pb_resp = db_system.DbSystem.pb(resp) - resp = self._interceptor.post_create_exascale_db_storage_vault(resp) + json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_get_db_system(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = ( - self._interceptor.post_create_exascale_db_storage_vault_with_metadata( - resp, response_metadata - ) + resp, _ = self._interceptor.post_get_db_system_with_metadata( + resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = json_format.MessageToJson(resp) + response_payload = db_system.DbSystem.to_json(response) except: response_payload = None http_response = { @@ -4652,21 +9493,21 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.create_exascale_db_storage_vault", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.get_db_system", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "CreateExascaleDbStorageVault", + "rpcName": "GetDbSystem", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _CreateOdbNetwork( - _BaseOracleDatabaseRestTransport._BaseCreateOdbNetwork, OracleDatabaseRestStub + class _GetExadbVmCluster( + _BaseOracleDatabaseRestTransport._BaseGetExadbVmCluster, OracleDatabaseRestStub ): def __hash__(self): - return hash("OracleDatabaseRestTransport.CreateOdbNetwork") + return hash("OracleDatabaseRestTransport.GetExadbVmCluster") @staticmethod def _get_response( @@ -4687,23 +9528,22 @@ def _get_response( timeout=timeout, headers=headers, params=rest_helpers.flatten_query_params(query_params, strict=True), - data=body, ) return response def __call__( self, - request: gco_odb_network.CreateOdbNetworkRequest, + request: oracledatabase.GetExadbVmClusterRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> operations_pb2.Operation: - r"""Call the create odb network method over HTTP. + ) -> exadb_vm_cluster.ExadbVmCluster: + r"""Call the get exadb vm cluster method over HTTP. Args: - request (~.gco_odb_network.CreateOdbNetworkRequest): - The request object. The request for ``OdbNetwork.Create``. + request (~.oracledatabase.GetExadbVmClusterRequest): + The request object. The request for ``ExadbVmCluster.Get``. retry (google.api_core.retry.Retry): Designation of what errors, if any, should be retried. timeout (float): The timeout for this request. @@ -4713,28 +9553,25 @@ def __call__( be of type `bytes`. Returns: - ~.operations_pb2.Operation: - This resource represents a - long-running operation that is the - result of a network API call. + ~.exadb_vm_cluster.ExadbVmCluster: + ExadbVmCluster represents a cluster + of VMs that are used to run Exadata + workloads. + https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/ExadbVmCluster/ """ - http_options = _BaseOracleDatabaseRestTransport._BaseCreateOdbNetwork._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseGetExadbVmCluster._get_http_options() - request, metadata = self._interceptor.pre_create_odb_network( + request, metadata = self._interceptor.pre_get_exadb_vm_cluster( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseCreateOdbNetwork._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseGetExadbVmCluster._get_transcoded_request( http_options, request ) - body = _BaseOracleDatabaseRestTransport._BaseCreateOdbNetwork._get_request_body_json( - transcoded_request - ) - # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseCreateOdbNetwork._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseGetExadbVmCluster._get_query_params_json( transcoded_request ) @@ -4756,24 +9593,23 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.CreateOdbNetwork", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GetExadbVmCluster", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "CreateOdbNetwork", + "rpcName": "GetExadbVmCluster", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._CreateOdbNetwork._get_response( + response = OracleDatabaseRestTransport._GetExadbVmCluster._get_response( self._host, metadata, query_params, self._session, timeout, transcoded_request, - body, ) # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception @@ -4782,19 +9618,21 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = operations_pb2.Operation() - json_format.Parse(response.content, resp, ignore_unknown_fields=True) + resp = exadb_vm_cluster.ExadbVmCluster() + pb_resp = exadb_vm_cluster.ExadbVmCluster.pb(resp) - resp = self._interceptor.post_create_odb_network(resp) + json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_get_exadb_vm_cluster(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_create_odb_network_with_metadata( + resp, _ = self._interceptor.post_get_exadb_vm_cluster_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = json_format.MessageToJson(resp) + response_payload = exadb_vm_cluster.ExadbVmCluster.to_json(response) except: response_payload = None http_response = { @@ -4803,21 +9641,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.create_odb_network", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.get_exadb_vm_cluster", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "CreateOdbNetwork", + "rpcName": "GetExadbVmCluster", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _CreateOdbSubnet( - _BaseOracleDatabaseRestTransport._BaseCreateOdbSubnet, OracleDatabaseRestStub + class _GetExascaleDbStorageVault( + _BaseOracleDatabaseRestTransport._BaseGetExascaleDbStorageVault, + OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.CreateOdbSubnet") + return hash("OracleDatabaseRestTransport.GetExascaleDbStorageVault") @staticmethod def _get_response( @@ -4838,54 +9677,50 @@ def _get_response( timeout=timeout, headers=headers, params=rest_helpers.flatten_query_params(query_params, strict=True), - data=body, ) return response def __call__( self, - request: gco_odb_subnet.CreateOdbSubnetRequest, + request: exascale_db_storage_vault.GetExascaleDbStorageVaultRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> operations_pb2.Operation: - r"""Call the create odb subnet method over HTTP. + ) -> exascale_db_storage_vault.ExascaleDbStorageVault: + r"""Call the get exascale db storage + vault method over HTTP. - Args: - request (~.gco_odb_subnet.CreateOdbSubnetRequest): - The request object. The request for ``OdbSubnet.Create``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + Args: + request (~.exascale_db_storage_vault.GetExascaleDbStorageVaultRequest): + The request object. The request for ``ExascaleDbStorageVault.Get``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. - Returns: - ~.operations_pb2.Operation: - This resource represents a - long-running operation that is the - result of a network API call. + Returns: + ~.exascale_db_storage_vault.ExascaleDbStorageVault: + ExascaleDbStorageVault represents a + storage vault exadb vm cluster resource. + https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/ExascaleDbStorageVault/ """ - http_options = _BaseOracleDatabaseRestTransport._BaseCreateOdbSubnet._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseGetExascaleDbStorageVault._get_http_options() - request, metadata = self._interceptor.pre_create_odb_subnet( + request, metadata = self._interceptor.pre_get_exascale_db_storage_vault( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseCreateOdbSubnet._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseGetExascaleDbStorageVault._get_transcoded_request( http_options, request ) - body = _BaseOracleDatabaseRestTransport._BaseCreateOdbSubnet._get_request_body_json( - transcoded_request - ) - # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseCreateOdbSubnet._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseGetExascaleDbStorageVault._get_query_params_json( transcoded_request ) @@ -4907,24 +9742,25 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.CreateOdbSubnet", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GetExascaleDbStorageVault", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "CreateOdbSubnet", + "rpcName": "GetExascaleDbStorageVault", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._CreateOdbSubnet._get_response( - self._host, - metadata, - query_params, - self._session, - timeout, - transcoded_request, - body, + response = ( + OracleDatabaseRestTransport._GetExascaleDbStorageVault._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + ) ) # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception @@ -4933,19 +9769,27 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = operations_pb2.Operation() - json_format.Parse(response.content, resp, ignore_unknown_fields=True) + resp = exascale_db_storage_vault.ExascaleDbStorageVault() + pb_resp = exascale_db_storage_vault.ExascaleDbStorageVault.pb(resp) - resp = self._interceptor.post_create_odb_subnet(resp) + json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_get_exascale_db_storage_vault(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_create_odb_subnet_with_metadata( - resp, response_metadata + resp, _ = ( + self._interceptor.post_get_exascale_db_storage_vault_with_metadata( + resp, response_metadata + ) ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = json_format.MessageToJson(resp) + response_payload = ( + exascale_db_storage_vault.ExascaleDbStorageVault.to_json( + response + ) + ) except: response_payload = None http_response = { @@ -4954,22 +9798,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.create_odb_subnet", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.get_exascale_db_storage_vault", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "CreateOdbSubnet", + "rpcName": "GetExascaleDbStorageVault", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _DeleteAutonomousDatabase( - _BaseOracleDatabaseRestTransport._BaseDeleteAutonomousDatabase, + class _GetGoldengateConnection( + _BaseOracleDatabaseRestTransport._BaseGetGoldengateConnection, OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.DeleteAutonomousDatabase") + return hash("OracleDatabaseRestTransport.GetGoldengateConnection") @staticmethod def _get_response( @@ -4995,45 +9839,43 @@ def _get_response( def __call__( self, - request: oracledatabase.DeleteAutonomousDatabaseRequest, + request: goldengate_connection.GetGoldengateConnectionRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> operations_pb2.Operation: - r"""Call the delete autonomous - database method over HTTP. + ) -> goldengate_connection.GoldengateConnection: + r"""Call the get goldengate connection method over HTTP. - Args: - request (~.oracledatabase.DeleteAutonomousDatabaseRequest): - The request object. The request for ``AutonomousDatabase.Delete``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + Args: + request (~.goldengate_connection.GetGoldengateConnectionRequest): + The request object. The request for ``GoldengateConnection.Get``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. - Returns: - ~.operations_pb2.Operation: - This resource represents a - long-running operation that is the - result of a network API call. + Returns: + ~.goldengate_connection.GoldengateConnection: + Details of the GoldengateConnection + resource. """ - http_options = _BaseOracleDatabaseRestTransport._BaseDeleteAutonomousDatabase._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseGetGoldengateConnection._get_http_options() - request, metadata = self._interceptor.pre_delete_autonomous_database( + request, metadata = self._interceptor.pre_get_goldengate_connection( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseDeleteAutonomousDatabase._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseGetGoldengateConnection._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseDeleteAutonomousDatabase._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseGetGoldengateConnection._get_query_params_json( transcoded_request ) @@ -5055,10 +9897,10 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.DeleteAutonomousDatabase", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GetGoldengateConnection", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "DeleteAutonomousDatabase", + "rpcName": "GetGoldengateConnection", "httpRequest": http_request, "metadata": http_request["headers"], }, @@ -5066,7 +9908,7 @@ def __call__( # Send the request response = ( - OracleDatabaseRestTransport._DeleteAutonomousDatabase._get_response( + OracleDatabaseRestTransport._GetGoldengateConnection._get_response( self._host, metadata, query_params, @@ -5082,19 +9924,23 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = operations_pb2.Operation() - json_format.Parse(response.content, resp, ignore_unknown_fields=True) + resp = goldengate_connection.GoldengateConnection() + pb_resp = goldengate_connection.GoldengateConnection.pb(resp) - resp = self._interceptor.post_delete_autonomous_database(resp) + json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_get_goldengate_connection(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_delete_autonomous_database_with_metadata( + resp, _ = self._interceptor.post_get_goldengate_connection_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = json_format.MessageToJson(resp) + response_payload = ( + goldengate_connection.GoldengateConnection.to_json(response) + ) except: response_payload = None http_response = { @@ -5103,22 +9949,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_autonomous_database", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.get_goldengate_connection", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "DeleteAutonomousDatabase", + "rpcName": "GetGoldengateConnection", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _DeleteCloudExadataInfrastructure( - _BaseOracleDatabaseRestTransport._BaseDeleteCloudExadataInfrastructure, + class _GetGoldengateConnectionAssignment( + _BaseOracleDatabaseRestTransport._BaseGetGoldengateConnectionAssignment, OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.DeleteCloudExadataInfrastructure") + return hash("OracleDatabaseRestTransport.GetGoldengateConnectionAssignment") @staticmethod def _get_response( @@ -5144,18 +9990,19 @@ def _get_response( def __call__( self, - request: oracledatabase.DeleteCloudExadataInfrastructureRequest, + request: goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> operations_pb2.Operation: - r"""Call the delete cloud exadata - infrastructure method over HTTP. + ) -> goldengate_connection_assignment.GoldengateConnectionAssignment: + r"""Call the get goldengate connection + assignment method over HTTP. Args: - request (~.oracledatabase.DeleteCloudExadataInfrastructureRequest): - The request object. The request for ``CloudExadataInfrastructure.Delete``. + request (~.goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest): + The request object. Request message for getting a + GoldengateConnectionAssignment. retry (google.api_core.retry.Retry): Designation of what errors, if any, should be retried. timeout (float): The timeout for this request. @@ -5165,26 +10012,25 @@ def __call__( be of type `bytes`. Returns: - ~.operations_pb2.Operation: - This resource represents a - long-running operation that is the - result of a network API call. + ~.goldengate_connection_assignment.GoldengateConnectionAssignment: + Represents the metadata of a + Goldengate Connection Assignment. """ - http_options = _BaseOracleDatabaseRestTransport._BaseDeleteCloudExadataInfrastructure._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseGetGoldengateConnectionAssignment._get_http_options() request, metadata = ( - self._interceptor.pre_delete_cloud_exadata_infrastructure( + self._interceptor.pre_get_goldengate_connection_assignment( request, metadata ) ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseDeleteCloudExadataInfrastructure._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseGetGoldengateConnectionAssignment._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseDeleteCloudExadataInfrastructure._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseGetGoldengateConnectionAssignment._get_query_params_json( transcoded_request ) @@ -5206,17 +10052,17 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.DeleteCloudExadataInfrastructure", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GetGoldengateConnectionAssignment", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "DeleteCloudExadataInfrastructure", + "rpcName": "GetGoldengateConnectionAssignment", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._DeleteCloudExadataInfrastructure._get_response( + response = OracleDatabaseRestTransport._GetGoldengateConnectionAssignment._get_response( self._host, metadata, query_params, @@ -5231,13 +10077,17 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = operations_pb2.Operation() - json_format.Parse(response.content, resp, ignore_unknown_fields=True) + resp = goldengate_connection_assignment.GoldengateConnectionAssignment() + pb_resp = ( + goldengate_connection_assignment.GoldengateConnectionAssignment.pb(resp) + ) - resp = self._interceptor.post_delete_cloud_exadata_infrastructure(resp) + json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_get_goldengate_connection_assignment(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] resp, _ = ( - self._interceptor.post_delete_cloud_exadata_infrastructure_with_metadata( + self._interceptor.post_get_goldengate_connection_assignment_with_metadata( resp, response_metadata ) ) @@ -5245,7 +10095,9 @@ def __call__( logging.DEBUG ): # pragma: NO COVER try: - response_payload = json_format.MessageToJson(resp) + response_payload = goldengate_connection_assignment.GoldengateConnectionAssignment.to_json( + response + ) except: response_payload = None http_response = { @@ -5254,22 +10106,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_cloud_exadata_infrastructure", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.get_goldengate_connection_assignment", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "DeleteCloudExadataInfrastructure", + "rpcName": "GetGoldengateConnectionAssignment", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _DeleteCloudVmCluster( - _BaseOracleDatabaseRestTransport._BaseDeleteCloudVmCluster, + class _GetGoldengateConnectionType( + _BaseOracleDatabaseRestTransport._BaseGetGoldengateConnectionType, OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.DeleteCloudVmCluster") + return hash("OracleDatabaseRestTransport.GetGoldengateConnectionType") @staticmethod def _get_response( @@ -5295,44 +10147,45 @@ def _get_response( def __call__( self, - request: oracledatabase.DeleteCloudVmClusterRequest, + request: goldengate_connection_type.GetGoldengateConnectionTypeRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> operations_pb2.Operation: - r"""Call the delete cloud vm cluster method over HTTP. + ) -> goldengate_connection_type.GoldengateConnectionType: + r"""Call the get goldengate connection + type method over HTTP. - Args: - request (~.oracledatabase.DeleteCloudVmClusterRequest): - The request object. The request for ``CloudVmCluster.Delete``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + Args: + request (~.goldengate_connection_type.GetGoldengateConnectionTypeRequest): + The request object. Message for getting a + GoldengateConnectionType. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. - Returns: - ~.operations_pb2.Operation: - This resource represents a - long-running operation that is the - result of a network API call. + Returns: + ~.goldengate_connection_type.GoldengateConnectionType: + Details of the Goldengate Connection + Type resource. """ - http_options = _BaseOracleDatabaseRestTransport._BaseDeleteCloudVmCluster._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseGetGoldengateConnectionType._get_http_options() - request, metadata = self._interceptor.pre_delete_cloud_vm_cluster( + request, metadata = self._interceptor.pre_get_goldengate_connection_type( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseDeleteCloudVmCluster._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseGetGoldengateConnectionType._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseDeleteCloudVmCluster._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseGetGoldengateConnectionType._get_query_params_json( transcoded_request ) @@ -5354,23 +10207,25 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.DeleteCloudVmCluster", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GetGoldengateConnectionType", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "DeleteCloudVmCluster", + "rpcName": "GetGoldengateConnectionType", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._DeleteCloudVmCluster._get_response( - self._host, - metadata, - query_params, - self._session, - timeout, - transcoded_request, + response = ( + OracleDatabaseRestTransport._GetGoldengateConnectionType._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + ) ) # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception @@ -5379,19 +10234,27 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = operations_pb2.Operation() - json_format.Parse(response.content, resp, ignore_unknown_fields=True) + resp = goldengate_connection_type.GoldengateConnectionType() + pb_resp = goldengate_connection_type.GoldengateConnectionType.pb(resp) - resp = self._interceptor.post_delete_cloud_vm_cluster(resp) + json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_get_goldengate_connection_type(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_delete_cloud_vm_cluster_with_metadata( - resp, response_metadata + resp, _ = ( + self._interceptor.post_get_goldengate_connection_type_with_metadata( + resp, response_metadata + ) ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = json_format.MessageToJson(resp) + response_payload = ( + goldengate_connection_type.GoldengateConnectionType.to_json( + response + ) + ) except: response_payload = None http_response = { @@ -5400,21 +10263,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_cloud_vm_cluster", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.get_goldengate_connection_type", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "DeleteCloudVmCluster", + "rpcName": "GetGoldengateConnectionType", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _DeleteDbSystem( - _BaseOracleDatabaseRestTransport._BaseDeleteDbSystem, OracleDatabaseRestStub + class _GetGoldengateDeployment( + _BaseOracleDatabaseRestTransport._BaseGetGoldengateDeployment, + OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.DeleteDbSystem") + return hash("OracleDatabaseRestTransport.GetGoldengateDeployment") @staticmethod def _get_response( @@ -5440,17 +10304,17 @@ def _get_response( def __call__( self, - request: db_system.DeleteDbSystemRequest, + request: goldengate_deployment.GetGoldengateDeploymentRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> operations_pb2.Operation: - r"""Call the delete db system method over HTTP. + ) -> goldengate_deployment.GoldengateDeployment: + r"""Call the get goldengate deployment method over HTTP. Args: - request (~.db_system.DeleteDbSystemRequest): - The request object. The request for ``DbSystem.Delete``. + request (~.goldengate_deployment.GetGoldengateDeploymentRequest): + The request object. The request for ``GoldengateDeployment.Get``. retry (google.api_core.retry.Retry): Designation of what errors, if any, should be retried. timeout (float): The timeout for this request. @@ -5460,26 +10324,23 @@ def __call__( be of type `bytes`. Returns: - ~.operations_pb2.Operation: - This resource represents a - long-running operation that is the - result of a network API call. + ~.goldengate_deployment.GoldengateDeployment: + GoldengateDeployment Goldengate + Deployment resource model. """ - http_options = ( - _BaseOracleDatabaseRestTransport._BaseDeleteDbSystem._get_http_options() - ) + http_options = _BaseOracleDatabaseRestTransport._BaseGetGoldengateDeployment._get_http_options() - request, metadata = self._interceptor.pre_delete_db_system( + request, metadata = self._interceptor.pre_get_goldengate_deployment( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseDeleteDbSystem._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseGetGoldengateDeployment._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseDeleteDbSystem._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseGetGoldengateDeployment._get_query_params_json( transcoded_request ) @@ -5501,23 +10362,25 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.DeleteDbSystem", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GetGoldengateDeployment", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "DeleteDbSystem", + "rpcName": "GetGoldengateDeployment", "httpRequest": http_request, "metadata": http_request["headers"], }, ) - - # Send the request - response = OracleDatabaseRestTransport._DeleteDbSystem._get_response( - self._host, - metadata, - query_params, - self._session, - timeout, - transcoded_request, + + # Send the request + response = ( + OracleDatabaseRestTransport._GetGoldengateDeployment._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + ) ) # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception @@ -5526,19 +10389,23 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = operations_pb2.Operation() - json_format.Parse(response.content, resp, ignore_unknown_fields=True) + resp = goldengate_deployment.GoldengateDeployment() + pb_resp = goldengate_deployment.GoldengateDeployment.pb(resp) - resp = self._interceptor.post_delete_db_system(resp) + json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_get_goldengate_deployment(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_delete_db_system_with_metadata( + resp, _ = self._interceptor.post_get_goldengate_deployment_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = json_format.MessageToJson(resp) + response_payload = ( + goldengate_deployment.GoldengateDeployment.to_json(response) + ) except: response_payload = None http_response = { @@ -5547,22 +10414,24 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_db_system", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.get_goldengate_deployment", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "DeleteDbSystem", + "rpcName": "GetGoldengateDeployment", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _DeleteExadbVmCluster( - _BaseOracleDatabaseRestTransport._BaseDeleteExadbVmCluster, + class _GetGoldengateDeploymentEnvironment( + _BaseOracleDatabaseRestTransport._BaseGetGoldengateDeploymentEnvironment, OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.DeleteExadbVmCluster") + return hash( + "OracleDatabaseRestTransport.GetGoldengateDeploymentEnvironment" + ) @staticmethod def _get_response( @@ -5588,44 +10457,47 @@ def _get_response( def __call__( self, - request: oracledatabase.DeleteExadbVmClusterRequest, + request: goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> operations_pb2.Operation: - r"""Call the delete exadb vm cluster method over HTTP. + ) -> goldengate_deployment_environment.GoldengateDeploymentEnvironment: + r"""Call the get goldengate deployment + environment method over HTTP. - Args: - request (~.oracledatabase.DeleteExadbVmClusterRequest): - The request object. The request for ``ExadbVmCluster.Delete``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + Args: + request (~.goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest): + The request object. Message for getting a + GoldengateDeploymentEnvironment. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. - Returns: - ~.operations_pb2.Operation: - This resource represents a - long-running operation that is the - result of a network API call. + Returns: + ~.goldengate_deployment_environment.GoldengateDeploymentEnvironment: + Details of the Goldengate Deployment + Environment resource. """ - http_options = _BaseOracleDatabaseRestTransport._BaseDeleteExadbVmCluster._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseGetGoldengateDeploymentEnvironment._get_http_options() - request, metadata = self._interceptor.pre_delete_exadb_vm_cluster( - request, metadata + request, metadata = ( + self._interceptor.pre_get_goldengate_deployment_environment( + request, metadata + ) ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseDeleteExadbVmCluster._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseGetGoldengateDeploymentEnvironment._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseDeleteExadbVmCluster._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseGetGoldengateDeploymentEnvironment._get_query_params_json( transcoded_request ) @@ -5647,17 +10519,17 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.DeleteExadbVmCluster", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GetGoldengateDeploymentEnvironment", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "DeleteExadbVmCluster", + "rpcName": "GetGoldengateDeploymentEnvironment", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._DeleteExadbVmCluster._get_response( + response = OracleDatabaseRestTransport._GetGoldengateDeploymentEnvironment._get_response( self._host, metadata, query_params, @@ -5672,19 +10544,29 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = operations_pb2.Operation() - json_format.Parse(response.content, resp, ignore_unknown_fields=True) + resp = goldengate_deployment_environment.GoldengateDeploymentEnvironment() + pb_resp = ( + goldengate_deployment_environment.GoldengateDeploymentEnvironment.pb( + resp + ) + ) - resp = self._interceptor.post_delete_exadb_vm_cluster(resp) + json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_get_goldengate_deployment_environment(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_delete_exadb_vm_cluster_with_metadata( - resp, response_metadata + resp, _ = ( + self._interceptor.post_get_goldengate_deployment_environment_with_metadata( + resp, response_metadata + ) ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = json_format.MessageToJson(resp) + response_payload = goldengate_deployment_environment.GoldengateDeploymentEnvironment.to_json( + response + ) except: response_payload = None http_response = { @@ -5693,22 +10575,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_exadb_vm_cluster", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.get_goldengate_deployment_environment", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "DeleteExadbVmCluster", + "rpcName": "GetGoldengateDeploymentEnvironment", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _DeleteExascaleDbStorageVault( - _BaseOracleDatabaseRestTransport._BaseDeleteExascaleDbStorageVault, + class _GetGoldengateDeploymentType( + _BaseOracleDatabaseRestTransport._BaseGetGoldengateDeploymentType, OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.DeleteExascaleDbStorageVault") + return hash("OracleDatabaseRestTransport.GetGoldengateDeploymentType") @staticmethod def _get_response( @@ -5734,19 +10616,19 @@ def _get_response( def __call__( self, - request: exascale_db_storage_vault.DeleteExascaleDbStorageVaultRequest, + request: goldengate_deployment_type.GetGoldengateDeploymentTypeRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> operations_pb2.Operation: - r"""Call the delete exascale db - storage vault method over HTTP. + ) -> goldengate_deployment_type.GoldengateDeploymentType: + r"""Call the get goldengate deployment + type method over HTTP. Args: - request (~.exascale_db_storage_vault.DeleteExascaleDbStorageVaultRequest): - The request object. The request message for - ``ExascaleDbStorageVault.Delete``. + request (~.goldengate_deployment_type.GetGoldengateDeploymentTypeRequest): + The request object. Message for getting a + GoldengateDeploymentType. retry (google.api_core.retry.Retry): Designation of what errors, if any, should be retried. timeout (float): The timeout for this request. @@ -5756,24 +10638,23 @@ def __call__( be of type `bytes`. Returns: - ~.operations_pb2.Operation: - This resource represents a - long-running operation that is the - result of a network API call. + ~.goldengate_deployment_type.GoldengateDeploymentType: + Details of the Goldengate Deployment + Type resource. """ - http_options = _BaseOracleDatabaseRestTransport._BaseDeleteExascaleDbStorageVault._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseGetGoldengateDeploymentType._get_http_options() - request, metadata = self._interceptor.pre_delete_exascale_db_storage_vault( + request, metadata = self._interceptor.pre_get_goldengate_deployment_type( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseDeleteExascaleDbStorageVault._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseGetGoldengateDeploymentType._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseDeleteExascaleDbStorageVault._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseGetGoldengateDeploymentType._get_query_params_json( transcoded_request ) @@ -5795,10 +10676,10 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.DeleteExascaleDbStorageVault", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GetGoldengateDeploymentType", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "DeleteExascaleDbStorageVault", + "rpcName": "GetGoldengateDeploymentType", "httpRequest": http_request, "metadata": http_request["headers"], }, @@ -5806,7 +10687,7 @@ def __call__( # Send the request response = ( - OracleDatabaseRestTransport._DeleteExascaleDbStorageVault._get_response( + OracleDatabaseRestTransport._GetGoldengateDeploymentType._get_response( self._host, metadata, query_params, @@ -5822,13 +10703,15 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = operations_pb2.Operation() - json_format.Parse(response.content, resp, ignore_unknown_fields=True) + resp = goldengate_deployment_type.GoldengateDeploymentType() + pb_resp = goldengate_deployment_type.GoldengateDeploymentType.pb(resp) - resp = self._interceptor.post_delete_exascale_db_storage_vault(resp) + json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_get_goldengate_deployment_type(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] resp, _ = ( - self._interceptor.post_delete_exascale_db_storage_vault_with_metadata( + self._interceptor.post_get_goldengate_deployment_type_with_metadata( resp, response_metadata ) ) @@ -5836,7 +10719,11 @@ def __call__( logging.DEBUG ): # pragma: NO COVER try: - response_payload = json_format.MessageToJson(resp) + response_payload = ( + goldengate_deployment_type.GoldengateDeploymentType.to_json( + response + ) + ) except: response_payload = None http_response = { @@ -5845,21 +10732,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_exascale_db_storage_vault", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.get_goldengate_deployment_type", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "DeleteExascaleDbStorageVault", + "rpcName": "GetGoldengateDeploymentType", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _DeleteOdbNetwork( - _BaseOracleDatabaseRestTransport._BaseDeleteOdbNetwork, OracleDatabaseRestStub + class _GetGoldengateDeploymentVersion( + _BaseOracleDatabaseRestTransport._BaseGetGoldengateDeploymentVersion, + OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.DeleteOdbNetwork") + return hash("OracleDatabaseRestTransport.GetGoldengateDeploymentVersion") @staticmethod def _get_response( @@ -5885,44 +10773,45 @@ def _get_response( def __call__( self, - request: odb_network.DeleteOdbNetworkRequest, + request: goldengate_deployment_version.GetGoldengateDeploymentVersionRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> operations_pb2.Operation: - r"""Call the delete odb network method over HTTP. + ) -> goldengate_deployment_version.GoldengateDeploymentVersion: + r"""Call the get goldengate deployment + version method over HTTP. - Args: - request (~.odb_network.DeleteOdbNetworkRequest): - The request object. The request for ``OdbNetwork.Delete``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + Args: + request (~.goldengate_deployment_version.GetGoldengateDeploymentVersionRequest): + The request object. Message for getting a + GoldengateDeploymentVersion. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. - Returns: - ~.operations_pb2.Operation: - This resource represents a - long-running operation that is the - result of a network API call. + Returns: + ~.goldengate_deployment_version.GoldengateDeploymentVersion: + Details of the Goldengate Deployment + Version resource. """ - http_options = _BaseOracleDatabaseRestTransport._BaseDeleteOdbNetwork._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseGetGoldengateDeploymentVersion._get_http_options() - request, metadata = self._interceptor.pre_delete_odb_network( + request, metadata = self._interceptor.pre_get_goldengate_deployment_version( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseDeleteOdbNetwork._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseGetGoldengateDeploymentVersion._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseDeleteOdbNetwork._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseGetGoldengateDeploymentVersion._get_query_params_json( transcoded_request ) @@ -5944,17 +10833,17 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.DeleteOdbNetwork", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GetGoldengateDeploymentVersion", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "DeleteOdbNetwork", + "rpcName": "GetGoldengateDeploymentVersion", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._DeleteOdbNetwork._get_response( + response = OracleDatabaseRestTransport._GetGoldengateDeploymentVersion._get_response( self._host, metadata, query_params, @@ -5969,19 +10858,25 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = operations_pb2.Operation() - json_format.Parse(response.content, resp, ignore_unknown_fields=True) + resp = goldengate_deployment_version.GoldengateDeploymentVersion() + pb_resp = goldengate_deployment_version.GoldengateDeploymentVersion.pb(resp) - resp = self._interceptor.post_delete_odb_network(resp) + json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_get_goldengate_deployment_version(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_delete_odb_network_with_metadata( - resp, response_metadata + resp, _ = ( + self._interceptor.post_get_goldengate_deployment_version_with_metadata( + resp, response_metadata + ) ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = json_format.MessageToJson(resp) + response_payload = goldengate_deployment_version.GoldengateDeploymentVersion.to_json( + response + ) except: response_payload = None http_response = { @@ -5990,21 +10885,21 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_odb_network", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.get_goldengate_deployment_version", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "DeleteOdbNetwork", + "rpcName": "GetGoldengateDeploymentVersion", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _DeleteOdbSubnet( - _BaseOracleDatabaseRestTransport._BaseDeleteOdbSubnet, OracleDatabaseRestStub + class _GetOdbNetwork( + _BaseOracleDatabaseRestTransport._BaseGetOdbNetwork, OracleDatabaseRestStub ): def __hash__(self): - return hash("OracleDatabaseRestTransport.DeleteOdbSubnet") + return hash("OracleDatabaseRestTransport.GetOdbNetwork") @staticmethod def _get_response( @@ -6030,17 +10925,17 @@ def _get_response( def __call__( self, - request: odb_subnet.DeleteOdbSubnetRequest, + request: odb_network.GetOdbNetworkRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> operations_pb2.Operation: - r"""Call the delete odb subnet method over HTTP. + ) -> odb_network.OdbNetwork: + r"""Call the get odb network method over HTTP. Args: - request (~.odb_subnet.DeleteOdbSubnetRequest): - The request object. The request for ``OdbSubnet.Delete``. + request (~.odb_network.GetOdbNetworkRequest): + The request object. The request for ``OdbNetwork.Get``. retry (google.api_core.retry.Retry): Designation of what errors, if any, should be retried. timeout (float): The timeout for this request. @@ -6050,24 +10945,21 @@ def __call__( be of type `bytes`. Returns: - ~.operations_pb2.Operation: - This resource represents a - long-running operation that is the - result of a network API call. - + ~.odb_network.OdbNetwork: + Represents OdbNetwork resource. """ - http_options = _BaseOracleDatabaseRestTransport._BaseDeleteOdbSubnet._get_http_options() - - request, metadata = self._interceptor.pre_delete_odb_subnet( - request, metadata + http_options = ( + _BaseOracleDatabaseRestTransport._BaseGetOdbNetwork._get_http_options() ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseDeleteOdbSubnet._get_transcoded_request( + + request, metadata = self._interceptor.pre_get_odb_network(request, metadata) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseGetOdbNetwork._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseDeleteOdbSubnet._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseGetOdbNetwork._get_query_params_json( transcoded_request ) @@ -6089,17 +10981,17 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.DeleteOdbSubnet", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GetOdbNetwork", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "DeleteOdbSubnet", + "rpcName": "GetOdbNetwork", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._DeleteOdbSubnet._get_response( + response = OracleDatabaseRestTransport._GetOdbNetwork._get_response( self._host, metadata, query_params, @@ -6114,19 +11006,21 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = operations_pb2.Operation() - json_format.Parse(response.content, resp, ignore_unknown_fields=True) + resp = odb_network.OdbNetwork() + pb_resp = odb_network.OdbNetwork.pb(resp) - resp = self._interceptor.post_delete_odb_subnet(resp) + json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_get_odb_network(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_delete_odb_subnet_with_metadata( + resp, _ = self._interceptor.post_get_odb_network_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = json_format.MessageToJson(resp) + response_payload = odb_network.OdbNetwork.to_json(response) except: response_payload = None http_response = { @@ -6135,22 +11029,21 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_odb_subnet", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.get_odb_network", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "DeleteOdbSubnet", + "rpcName": "GetOdbNetwork", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _FailoverAutonomousDatabase( - _BaseOracleDatabaseRestTransport._BaseFailoverAutonomousDatabase, - OracleDatabaseRestStub, + class _GetOdbSubnet( + _BaseOracleDatabaseRestTransport._BaseGetOdbSubnet, OracleDatabaseRestStub ): def __hash__(self): - return hash("OracleDatabaseRestTransport.FailoverAutonomousDatabase") + return hash("OracleDatabaseRestTransport.GetOdbSubnet") @staticmethod def _get_response( @@ -6171,56 +11064,46 @@ def _get_response( timeout=timeout, headers=headers, params=rest_helpers.flatten_query_params(query_params, strict=True), - data=body, ) return response def __call__( self, - request: oracledatabase.FailoverAutonomousDatabaseRequest, + request: odb_subnet.GetOdbSubnetRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> operations_pb2.Operation: - r"""Call the failover autonomous - database method over HTTP. - - Args: - request (~.oracledatabase.FailoverAutonomousDatabaseRequest): - The request object. The request for - ``OracleDatabase.FailoverAutonomousDatabase``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + ) -> odb_subnet.OdbSubnet: + r"""Call the get odb subnet method over HTTP. - Returns: - ~.operations_pb2.Operation: - This resource represents a - long-running operation that is the - result of a network API call. + Args: + request (~.odb_subnet.GetOdbSubnetRequest): + The request object. The request for ``OdbSubnet.Get``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + Returns: + ~.odb_subnet.OdbSubnet: + Represents OdbSubnet resource. """ - http_options = _BaseOracleDatabaseRestTransport._BaseFailoverAutonomousDatabase._get_http_options() - - request, metadata = self._interceptor.pre_failover_autonomous_database( - request, metadata - ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseFailoverAutonomousDatabase._get_transcoded_request( - http_options, request + http_options = ( + _BaseOracleDatabaseRestTransport._BaseGetOdbSubnet._get_http_options() ) - body = _BaseOracleDatabaseRestTransport._BaseFailoverAutonomousDatabase._get_request_body_json( - transcoded_request + request, metadata = self._interceptor.pre_get_odb_subnet(request, metadata) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseGetOdbSubnet._get_transcoded_request( + http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseFailoverAutonomousDatabase._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseGetOdbSubnet._get_query_params_json( transcoded_request ) @@ -6242,26 +11125,23 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.FailoverAutonomousDatabase", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GetOdbSubnet", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "FailoverAutonomousDatabase", + "rpcName": "GetOdbSubnet", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = ( - OracleDatabaseRestTransport._FailoverAutonomousDatabase._get_response( - self._host, - metadata, - query_params, - self._session, - timeout, - transcoded_request, - body, - ) + response = OracleDatabaseRestTransport._GetOdbSubnet._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, ) # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception @@ -6270,19 +11150,21 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = operations_pb2.Operation() - json_format.Parse(response.content, resp, ignore_unknown_fields=True) + resp = odb_subnet.OdbSubnet() + pb_resp = odb_subnet.OdbSubnet.pb(resp) - resp = self._interceptor.post_failover_autonomous_database(resp) + json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_get_odb_subnet(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_failover_autonomous_database_with_metadata( + resp, _ = self._interceptor.post_get_odb_subnet_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = json_format.MessageToJson(resp) + response_payload = odb_subnet.OdbSubnet.to_json(response) except: response_payload = None http_response = { @@ -6291,22 +11173,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.failover_autonomous_database", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.get_odb_subnet", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "FailoverAutonomousDatabase", + "rpcName": "GetOdbSubnet", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _GenerateAutonomousDatabaseWallet( - _BaseOracleDatabaseRestTransport._BaseGenerateAutonomousDatabaseWallet, + class _GetPluggableDatabase( + _BaseOracleDatabaseRestTransport._BaseGetPluggableDatabase, OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.GenerateAutonomousDatabaseWallet") + return hash("OracleDatabaseRestTransport.GetPluggableDatabase") @staticmethod def _get_response( @@ -6327,54 +11209,48 @@ def _get_response( timeout=timeout, headers=headers, params=rest_helpers.flatten_query_params(query_params, strict=True), - data=body, ) return response def __call__( self, - request: oracledatabase.GenerateAutonomousDatabaseWalletRequest, + request: pluggable_database.GetPluggableDatabaseRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> oracledatabase.GenerateAutonomousDatabaseWalletResponse: - r"""Call the generate autonomous - database wallet method over HTTP. + ) -> pluggable_database.PluggableDatabase: + r"""Call the get pluggable database method over HTTP. - Args: - request (~.oracledatabase.GenerateAutonomousDatabaseWalletRequest): - The request object. The request for ``AutonomousDatabase.GenerateWallet``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + Args: + request (~.pluggable_database.GetPluggableDatabaseRequest): + The request object. The request for ``PluggableDatabase.Get``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.pluggable_database.PluggableDatabase: + The PluggableDatabase resource. + https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/PluggableDatabase/ - Returns: - ~.oracledatabase.GenerateAutonomousDatabaseWalletResponse: - The response for ``AutonomousDatabase.GenerateWallet``. """ - http_options = _BaseOracleDatabaseRestTransport._BaseGenerateAutonomousDatabaseWallet._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseGetPluggableDatabase._get_http_options() - request, metadata = ( - self._interceptor.pre_generate_autonomous_database_wallet( - request, metadata - ) + request, metadata = self._interceptor.pre_get_pluggable_database( + request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseGenerateAutonomousDatabaseWallet._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseGetPluggableDatabase._get_transcoded_request( http_options, request ) - body = _BaseOracleDatabaseRestTransport._BaseGenerateAutonomousDatabaseWallet._get_request_body_json( - transcoded_request - ) - # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseGenerateAutonomousDatabaseWallet._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseGetPluggableDatabase._get_query_params_json( transcoded_request ) @@ -6396,24 +11272,23 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GenerateAutonomousDatabaseWallet", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GetPluggableDatabase", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "GenerateAutonomousDatabaseWallet", + "rpcName": "GetPluggableDatabase", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._GenerateAutonomousDatabaseWallet._get_response( + response = OracleDatabaseRestTransport._GetPluggableDatabase._get_response( self._host, metadata, query_params, self._session, timeout, transcoded_request, - body, ) # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception @@ -6422,26 +11297,22 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = oracledatabase.GenerateAutonomousDatabaseWalletResponse() - pb_resp = oracledatabase.GenerateAutonomousDatabaseWalletResponse.pb(resp) + resp = pluggable_database.PluggableDatabase() + pb_resp = pluggable_database.PluggableDatabase.pb(resp) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_generate_autonomous_database_wallet(resp) + resp = self._interceptor.post_get_pluggable_database(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = ( - self._interceptor.post_generate_autonomous_database_wallet_with_metadata( - resp, response_metadata - ) + resp, _ = self._interceptor.post_get_pluggable_database_with_metadata( + resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = ( - oracledatabase.GenerateAutonomousDatabaseWalletResponse.to_json( - response - ) + response_payload = pluggable_database.PluggableDatabase.to_json( + response ) except: response_payload = None @@ -6451,22 +11322,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.generate_autonomous_database_wallet", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.get_pluggable_database", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "GenerateAutonomousDatabaseWallet", + "rpcName": "GetPluggableDatabase", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _GetAutonomousDatabase( - _BaseOracleDatabaseRestTransport._BaseGetAutonomousDatabase, + class _ListAutonomousDatabaseBackups( + _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabaseBackups, OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.GetAutonomousDatabase") + return hash("OracleDatabaseRestTransport.ListAutonomousDatabaseBackups") @staticmethod def _get_response( @@ -6492,44 +11363,42 @@ def _get_response( def __call__( self, - request: oracledatabase.GetAutonomousDatabaseRequest, + request: oracledatabase.ListAutonomousDatabaseBackupsRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> autonomous_database.AutonomousDatabase: - r"""Call the get autonomous database method over HTTP. - - Args: - request (~.oracledatabase.GetAutonomousDatabaseRequest): - The request object. The request for ``AutonomousDatabase.Get``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + ) -> oracledatabase.ListAutonomousDatabaseBackupsResponse: + r"""Call the list autonomous database + backups method over HTTP. - Returns: - ~.autonomous_database.AutonomousDatabase: - Details of the Autonomous Database - resource. - https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/AutonomousDatabase/ + Args: + request (~.oracledatabase.ListAutonomousDatabaseBackupsRequest): + The request object. The request for ``AutonomousDatabaseBackup.List``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + Returns: + ~.oracledatabase.ListAutonomousDatabaseBackupsResponse: + The response for ``AutonomousDatabaseBackup.List``. """ - http_options = _BaseOracleDatabaseRestTransport._BaseGetAutonomousDatabase._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabaseBackups._get_http_options() - request, metadata = self._interceptor.pre_get_autonomous_database( + request, metadata = self._interceptor.pre_list_autonomous_database_backups( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseGetAutonomousDatabase._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabaseBackups._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseGetAutonomousDatabase._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabaseBackups._get_query_params_json( transcoded_request ) @@ -6551,17 +11420,17 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GetAutonomousDatabase", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListAutonomousDatabaseBackups", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "GetAutonomousDatabase", + "rpcName": "ListAutonomousDatabaseBackups", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._GetAutonomousDatabase._get_response( + response = OracleDatabaseRestTransport._ListAutonomousDatabaseBackups._get_response( self._host, metadata, query_params, @@ -6576,22 +11445,26 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = autonomous_database.AutonomousDatabase() - pb_resp = autonomous_database.AutonomousDatabase.pb(resp) + resp = oracledatabase.ListAutonomousDatabaseBackupsResponse() + pb_resp = oracledatabase.ListAutonomousDatabaseBackupsResponse.pb(resp) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_get_autonomous_database(resp) + resp = self._interceptor.post_list_autonomous_database_backups(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_get_autonomous_database_with_metadata( - resp, response_metadata + resp, _ = ( + self._interceptor.post_list_autonomous_database_backups_with_metadata( + resp, response_metadata + ) ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = autonomous_database.AutonomousDatabase.to_json( - response + response_payload = ( + oracledatabase.ListAutonomousDatabaseBackupsResponse.to_json( + response + ) ) except: response_payload = None @@ -6601,22 +11474,24 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.get_autonomous_database", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_autonomous_database_backups", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "GetAutonomousDatabase", + "rpcName": "ListAutonomousDatabaseBackups", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _GetCloudExadataInfrastructure( - _BaseOracleDatabaseRestTransport._BaseGetCloudExadataInfrastructure, + class _ListAutonomousDatabaseCharacterSets( + _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabaseCharacterSets, OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.GetCloudExadataInfrastructure") + return hash( + "OracleDatabaseRestTransport.ListAutonomousDatabaseCharacterSets" + ) @staticmethod def _get_response( @@ -6642,18 +11517,18 @@ def _get_response( def __call__( self, - request: oracledatabase.GetCloudExadataInfrastructureRequest, + request: oracledatabase.ListAutonomousDatabaseCharacterSetsRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> exadata_infra.CloudExadataInfrastructure: - r"""Call the get cloud exadata - infrastructure method over HTTP. + ) -> oracledatabase.ListAutonomousDatabaseCharacterSetsResponse: + r"""Call the list autonomous database + character sets method over HTTP. Args: - request (~.oracledatabase.GetCloudExadataInfrastructureRequest): - The request object. The request for ``CloudExadataInfrastructure.Get``. + request (~.oracledatabase.ListAutonomousDatabaseCharacterSetsRequest): + The request object. The request for ``AutonomousDatabaseCharacterSet.List``. retry (google.api_core.retry.Retry): Designation of what errors, if any, should be retried. timeout (float): The timeout for this request. @@ -6663,24 +11538,25 @@ def __call__( be of type `bytes`. Returns: - ~.exadata_infra.CloudExadataInfrastructure: - Represents CloudExadataInfrastructure - resource. - https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/CloudExadataInfrastructure/ + ~.oracledatabase.ListAutonomousDatabaseCharacterSetsResponse: + The response for + ``AutonomousDatabaseCharacterSet.List``. """ - http_options = _BaseOracleDatabaseRestTransport._BaseGetCloudExadataInfrastructure._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabaseCharacterSets._get_http_options() - request, metadata = self._interceptor.pre_get_cloud_exadata_infrastructure( - request, metadata + request, metadata = ( + self._interceptor.pre_list_autonomous_database_character_sets( + request, metadata + ) ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseGetCloudExadataInfrastructure._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabaseCharacterSets._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseGetCloudExadataInfrastructure._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabaseCharacterSets._get_query_params_json( transcoded_request ) @@ -6702,17 +11578,17 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GetCloudExadataInfrastructure", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListAutonomousDatabaseCharacterSets", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "GetCloudExadataInfrastructure", + "rpcName": "ListAutonomousDatabaseCharacterSets", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._GetCloudExadataInfrastructure._get_response( + response = OracleDatabaseRestTransport._ListAutonomousDatabaseCharacterSets._get_response( self._host, metadata, query_params, @@ -6727,15 +11603,17 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = exadata_infra.CloudExadataInfrastructure() - pb_resp = exadata_infra.CloudExadataInfrastructure.pb(resp) + resp = oracledatabase.ListAutonomousDatabaseCharacterSetsResponse() + pb_resp = oracledatabase.ListAutonomousDatabaseCharacterSetsResponse.pb( + resp + ) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_get_cloud_exadata_infrastructure(resp) + resp = self._interceptor.post_list_autonomous_database_character_sets(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] resp, _ = ( - self._interceptor.post_get_cloud_exadata_infrastructure_with_metadata( + self._interceptor.post_list_autonomous_database_character_sets_with_metadata( resp, response_metadata ) ) @@ -6743,7 +11621,7 @@ def __call__( logging.DEBUG ): # pragma: NO COVER try: - response_payload = exadata_infra.CloudExadataInfrastructure.to_json( + response_payload = oracledatabase.ListAutonomousDatabaseCharacterSetsResponse.to_json( response ) except: @@ -6754,21 +11632,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.get_cloud_exadata_infrastructure", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_autonomous_database_character_sets", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "GetCloudExadataInfrastructure", + "rpcName": "ListAutonomousDatabaseCharacterSets", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _GetCloudVmCluster( - _BaseOracleDatabaseRestTransport._BaseGetCloudVmCluster, OracleDatabaseRestStub + class _ListAutonomousDatabases( + _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabases, + OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.GetCloudVmCluster") + return hash("OracleDatabaseRestTransport.ListAutonomousDatabases") @staticmethod def _get_response( @@ -6794,17 +11673,17 @@ def _get_response( def __call__( self, - request: oracledatabase.GetCloudVmClusterRequest, + request: oracledatabase.ListAutonomousDatabasesRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> vm_cluster.CloudVmCluster: - r"""Call the get cloud vm cluster method over HTTP. + ) -> oracledatabase.ListAutonomousDatabasesResponse: + r"""Call the list autonomous databases method over HTTP. Args: - request (~.oracledatabase.GetCloudVmClusterRequest): - The request object. The request for ``CloudVmCluster.Get``. + request (~.oracledatabase.ListAutonomousDatabasesRequest): + The request object. The request for ``AutonomousDatabase.List``. retry (google.api_core.retry.Retry): Designation of what errors, if any, should be retried. timeout (float): The timeout for this request. @@ -6814,24 +11693,21 @@ def __call__( be of type `bytes`. Returns: - ~.vm_cluster.CloudVmCluster: - Details of the Cloud VM Cluster - resource. - https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/CloudVmCluster/ - + ~.oracledatabase.ListAutonomousDatabasesResponse: + The response for ``AutonomousDatabase.List``. """ - http_options = _BaseOracleDatabaseRestTransport._BaseGetCloudVmCluster._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabases._get_http_options() - request, metadata = self._interceptor.pre_get_cloud_vm_cluster( + request, metadata = self._interceptor.pre_list_autonomous_databases( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseGetCloudVmCluster._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabases._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseGetCloudVmCluster._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabases._get_query_params_json( transcoded_request ) @@ -6853,23 +11729,25 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GetCloudVmCluster", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListAutonomousDatabases", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "GetCloudVmCluster", + "rpcName": "ListAutonomousDatabases", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._GetCloudVmCluster._get_response( - self._host, - metadata, - query_params, - self._session, - timeout, - transcoded_request, + response = ( + OracleDatabaseRestTransport._ListAutonomousDatabases._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + ) ) # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception @@ -6878,21 +11756,23 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = vm_cluster.CloudVmCluster() - pb_resp = vm_cluster.CloudVmCluster.pb(resp) + resp = oracledatabase.ListAutonomousDatabasesResponse() + pb_resp = oracledatabase.ListAutonomousDatabasesResponse.pb(resp) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_get_cloud_vm_cluster(resp) + resp = self._interceptor.post_list_autonomous_databases(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_get_cloud_vm_cluster_with_metadata( + resp, _ = self._interceptor.post_list_autonomous_databases_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = vm_cluster.CloudVmCluster.to_json(response) + response_payload = ( + oracledatabase.ListAutonomousDatabasesResponse.to_json(response) + ) except: response_payload = None http_response = { @@ -6901,21 +11781,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.get_cloud_vm_cluster", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_autonomous_databases", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "GetCloudVmCluster", + "rpcName": "ListAutonomousDatabases", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _GetDatabase( - _BaseOracleDatabaseRestTransport._BaseGetDatabase, OracleDatabaseRestStub + class _ListAutonomousDbVersions( + _BaseOracleDatabaseRestTransport._BaseListAutonomousDbVersions, + OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.GetDatabase") + return hash("OracleDatabaseRestTransport.ListAutonomousDbVersions") @staticmethod def _get_response( @@ -6941,43 +11822,42 @@ def _get_response( def __call__( self, - request: database.GetDatabaseRequest, + request: oracledatabase.ListAutonomousDbVersionsRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> database.Database: - r"""Call the get database method over HTTP. - - Args: - request (~.database.GetDatabaseRequest): - The request object. The request for ``Database.Get``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + ) -> oracledatabase.ListAutonomousDbVersionsResponse: + r"""Call the list autonomous db + versions method over HTTP. - Returns: - ~.database.Database: - Details of the Database resource. - https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/Database/ + Args: + request (~.oracledatabase.ListAutonomousDbVersionsRequest): + The request object. The request for ``AutonomousDbVersion.List``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + Returns: + ~.oracledatabase.ListAutonomousDbVersionsResponse: + The response for ``AutonomousDbVersion.List``. """ - http_options = ( - _BaseOracleDatabaseRestTransport._BaseGetDatabase._get_http_options() - ) + http_options = _BaseOracleDatabaseRestTransport._BaseListAutonomousDbVersions._get_http_options() - request, metadata = self._interceptor.pre_get_database(request, metadata) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseGetDatabase._get_transcoded_request( + request, metadata = self._interceptor.pre_list_autonomous_db_versions( + request, metadata + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListAutonomousDbVersions._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseGetDatabase._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListAutonomousDbVersions._get_query_params_json( transcoded_request ) @@ -6999,23 +11879,25 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GetDatabase", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListAutonomousDbVersions", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "GetDatabase", + "rpcName": "ListAutonomousDbVersions", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._GetDatabase._get_response( - self._host, - metadata, - query_params, - self._session, - timeout, - transcoded_request, + response = ( + OracleDatabaseRestTransport._ListAutonomousDbVersions._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + ) ) # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception @@ -7024,21 +11906,25 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = database.Database() - pb_resp = database.Database.pb(resp) + resp = oracledatabase.ListAutonomousDbVersionsResponse() + pb_resp = oracledatabase.ListAutonomousDbVersionsResponse.pb(resp) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_get_database(resp) + resp = self._interceptor.post_list_autonomous_db_versions(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_get_database_with_metadata( + resp, _ = self._interceptor.post_list_autonomous_db_versions_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = database.Database.to_json(response) + response_payload = ( + oracledatabase.ListAutonomousDbVersionsResponse.to_json( + response + ) + ) except: response_payload = None http_response = { @@ -7047,21 +11933,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.get_database", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_autonomous_db_versions", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "GetDatabase", + "rpcName": "ListAutonomousDbVersions", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _GetDbSystem( - _BaseOracleDatabaseRestTransport._BaseGetDbSystem, OracleDatabaseRestStub + class _ListCloudExadataInfrastructures( + _BaseOracleDatabaseRestTransport._BaseListCloudExadataInfrastructures, + OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.GetDbSystem") + return hash("OracleDatabaseRestTransport.ListCloudExadataInfrastructures") @staticmethod def _get_response( @@ -7087,44 +11974,44 @@ def _get_response( def __call__( self, - request: db_system.GetDbSystemRequest, + request: oracledatabase.ListCloudExadataInfrastructuresRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> db_system.DbSystem: - r"""Call the get db system method over HTTP. - - Args: - request (~.db_system.GetDbSystemRequest): - The request object. The request for ``DbSystem.Get``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + ) -> oracledatabase.ListCloudExadataInfrastructuresResponse: + r"""Call the list cloud exadata + infrastructures method over HTTP. - Returns: - ~.db_system.DbSystem: - Details of the DbSystem (BaseDB) - resource. - https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/DbSystem/ + Args: + request (~.oracledatabase.ListCloudExadataInfrastructuresRequest): + The request object. The request for ``CloudExadataInfrastructures.List``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + Returns: + ~.oracledatabase.ListCloudExadataInfrastructuresResponse: + The response for ``CloudExadataInfrastructures.list``. """ - http_options = ( - _BaseOracleDatabaseRestTransport._BaseGetDbSystem._get_http_options() - ) + http_options = _BaseOracleDatabaseRestTransport._BaseListCloudExadataInfrastructures._get_http_options() - request, metadata = self._interceptor.pre_get_db_system(request, metadata) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseGetDbSystem._get_transcoded_request( + request, metadata = ( + self._interceptor.pre_list_cloud_exadata_infrastructures( + request, metadata + ) + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListCloudExadataInfrastructures._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseGetDbSystem._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListCloudExadataInfrastructures._get_query_params_json( transcoded_request ) @@ -7146,17 +12033,17 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GetDbSystem", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListCloudExadataInfrastructures", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "GetDbSystem", + "rpcName": "ListCloudExadataInfrastructures", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._GetDbSystem._get_response( + response = OracleDatabaseRestTransport._ListCloudExadataInfrastructures._get_response( self._host, metadata, query_params, @@ -7171,21 +12058,27 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = db_system.DbSystem() - pb_resp = db_system.DbSystem.pb(resp) + resp = oracledatabase.ListCloudExadataInfrastructuresResponse() + pb_resp = oracledatabase.ListCloudExadataInfrastructuresResponse.pb(resp) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_get_db_system(resp) + resp = self._interceptor.post_list_cloud_exadata_infrastructures(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_get_db_system_with_metadata( - resp, response_metadata + resp, _ = ( + self._interceptor.post_list_cloud_exadata_infrastructures_with_metadata( + resp, response_metadata + ) ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = db_system.DbSystem.to_json(response) + response_payload = ( + oracledatabase.ListCloudExadataInfrastructuresResponse.to_json( + response + ) + ) except: response_payload = None http_response = { @@ -7194,21 +12087,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.get_db_system", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_cloud_exadata_infrastructures", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "GetDbSystem", + "rpcName": "ListCloudExadataInfrastructures", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _GetExadbVmCluster( - _BaseOracleDatabaseRestTransport._BaseGetExadbVmCluster, OracleDatabaseRestStub + class _ListCloudVmClusters( + _BaseOracleDatabaseRestTransport._BaseListCloudVmClusters, + OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.GetExadbVmCluster") + return hash("OracleDatabaseRestTransport.ListCloudVmClusters") @staticmethod def _get_response( @@ -7234,17 +12128,17 @@ def _get_response( def __call__( self, - request: oracledatabase.GetExadbVmClusterRequest, + request: oracledatabase.ListCloudVmClustersRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> exadb_vm_cluster.ExadbVmCluster: - r"""Call the get exadb vm cluster method over HTTP. + ) -> oracledatabase.ListCloudVmClustersResponse: + r"""Call the list cloud vm clusters method over HTTP. Args: - request (~.oracledatabase.GetExadbVmClusterRequest): - The request object. The request for ``ExadbVmCluster.Get``. + request (~.oracledatabase.ListCloudVmClustersRequest): + The request object. The request for ``CloudVmCluster.List``. retry (google.api_core.retry.Retry): Designation of what errors, if any, should be retried. timeout (float): The timeout for this request. @@ -7254,25 +12148,21 @@ def __call__( be of type `bytes`. Returns: - ~.exadb_vm_cluster.ExadbVmCluster: - ExadbVmCluster represents a cluster - of VMs that are used to run Exadata - workloads. - https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/ExadbVmCluster/ - + ~.oracledatabase.ListCloudVmClustersResponse: + The response for ``CloudVmCluster.List``. """ - http_options = _BaseOracleDatabaseRestTransport._BaseGetExadbVmCluster._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseListCloudVmClusters._get_http_options() - request, metadata = self._interceptor.pre_get_exadb_vm_cluster( + request, metadata = self._interceptor.pre_list_cloud_vm_clusters( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseGetExadbVmCluster._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListCloudVmClusters._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseGetExadbVmCluster._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListCloudVmClusters._get_query_params_json( transcoded_request ) @@ -7294,17 +12184,17 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GetExadbVmCluster", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListCloudVmClusters", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "GetExadbVmCluster", + "rpcName": "ListCloudVmClusters", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._GetExadbVmCluster._get_response( + response = OracleDatabaseRestTransport._ListCloudVmClusters._get_response( self._host, metadata, query_params, @@ -7319,21 +12209,23 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = exadb_vm_cluster.ExadbVmCluster() - pb_resp = exadb_vm_cluster.ExadbVmCluster.pb(resp) + resp = oracledatabase.ListCloudVmClustersResponse() + pb_resp = oracledatabase.ListCloudVmClustersResponse.pb(resp) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_get_exadb_vm_cluster(resp) + resp = self._interceptor.post_list_cloud_vm_clusters(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_get_exadb_vm_cluster_with_metadata( + resp, _ = self._interceptor.post_list_cloud_vm_clusters_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = exadb_vm_cluster.ExadbVmCluster.to_json(response) + response_payload = ( + oracledatabase.ListCloudVmClustersResponse.to_json(response) + ) except: response_payload = None http_response = { @@ -7342,22 +12234,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.get_exadb_vm_cluster", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_cloud_vm_clusters", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "GetExadbVmCluster", + "rpcName": "ListCloudVmClusters", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _GetExascaleDbStorageVault( - _BaseOracleDatabaseRestTransport._BaseGetExascaleDbStorageVault, + class _ListDatabaseCharacterSets( + _BaseOracleDatabaseRestTransport._BaseListDatabaseCharacterSets, OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.GetExascaleDbStorageVault") + return hash("OracleDatabaseRestTransport.ListDatabaseCharacterSets") @staticmethod def _get_response( @@ -7383,18 +12275,18 @@ def _get_response( def __call__( self, - request: exascale_db_storage_vault.GetExascaleDbStorageVaultRequest, + request: database_character_set.ListDatabaseCharacterSetsRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> exascale_db_storage_vault.ExascaleDbStorageVault: - r"""Call the get exascale db storage - vault method over HTTP. + ) -> database_character_set.ListDatabaseCharacterSetsResponse: + r"""Call the list database character + sets method over HTTP. Args: - request (~.exascale_db_storage_vault.GetExascaleDbStorageVaultRequest): - The request object. The request for ``ExascaleDbStorageVault.Get``. + request (~.database_character_set.ListDatabaseCharacterSetsRequest): + The request object. The request for ``DatabaseCharacterSet.List``. retry (google.api_core.retry.Retry): Designation of what errors, if any, should be retried. timeout (float): The timeout for this request. @@ -7404,24 +12296,21 @@ def __call__( be of type `bytes`. Returns: - ~.exascale_db_storage_vault.ExascaleDbStorageVault: - ExascaleDbStorageVault represents a - storage vault exadb vm cluster resource. - https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/ExascaleDbStorageVault/ - + ~.database_character_set.ListDatabaseCharacterSetsResponse: + The response for ``DatabaseCharacterSet.List``. """ - http_options = _BaseOracleDatabaseRestTransport._BaseGetExascaleDbStorageVault._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseListDatabaseCharacterSets._get_http_options() - request, metadata = self._interceptor.pre_get_exascale_db_storage_vault( + request, metadata = self._interceptor.pre_list_database_character_sets( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseGetExascaleDbStorageVault._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListDatabaseCharacterSets._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseGetExascaleDbStorageVault._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListDatabaseCharacterSets._get_query_params_json( transcoded_request ) @@ -7443,10 +12332,10 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GetExascaleDbStorageVault", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListDatabaseCharacterSets", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "GetExascaleDbStorageVault", + "rpcName": "ListDatabaseCharacterSets", "httpRequest": http_request, "metadata": http_request["headers"], }, @@ -7454,7 +12343,7 @@ def __call__( # Send the request response = ( - OracleDatabaseRestTransport._GetExascaleDbStorageVault._get_response( + OracleDatabaseRestTransport._ListDatabaseCharacterSets._get_response( self._host, metadata, query_params, @@ -7470,26 +12359,22 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = exascale_db_storage_vault.ExascaleDbStorageVault() - pb_resp = exascale_db_storage_vault.ExascaleDbStorageVault.pb(resp) + resp = database_character_set.ListDatabaseCharacterSetsResponse() + pb_resp = database_character_set.ListDatabaseCharacterSetsResponse.pb(resp) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_get_exascale_db_storage_vault(resp) + resp = self._interceptor.post_list_database_character_sets(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = ( - self._interceptor.post_get_exascale_db_storage_vault_with_metadata( - resp, response_metadata - ) + resp, _ = self._interceptor.post_list_database_character_sets_with_metadata( + resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = ( - exascale_db_storage_vault.ExascaleDbStorageVault.to_json( - response - ) + response_payload = database_character_set.ListDatabaseCharacterSetsResponse.to_json( + response ) except: response_payload = None @@ -7499,21 +12384,21 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.get_exascale_db_storage_vault", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_database_character_sets", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "GetExascaleDbStorageVault", + "rpcName": "ListDatabaseCharacterSets", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _GetOdbNetwork( - _BaseOracleDatabaseRestTransport._BaseGetOdbNetwork, OracleDatabaseRestStub + class _ListDatabases( + _BaseOracleDatabaseRestTransport._BaseListDatabases, OracleDatabaseRestStub ): def __hash__(self): - return hash("OracleDatabaseRestTransport.GetOdbNetwork") + return hash("OracleDatabaseRestTransport.ListDatabases") @staticmethod def _get_response( @@ -7539,17 +12424,17 @@ def _get_response( def __call__( self, - request: odb_network.GetOdbNetworkRequest, + request: database.ListDatabasesRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> odb_network.OdbNetwork: - r"""Call the get odb network method over HTTP. + ) -> database.ListDatabasesResponse: + r"""Call the list databases method over HTTP. Args: - request (~.odb_network.GetOdbNetworkRequest): - The request object. The request for ``OdbNetwork.Get``. + request (~.database.ListDatabasesRequest): + The request object. The request for ``Database.List``. retry (google.api_core.retry.Retry): Designation of what errors, if any, should be retried. timeout (float): The timeout for this request. @@ -7559,21 +12444,21 @@ def __call__( be of type `bytes`. Returns: - ~.odb_network.OdbNetwork: - Represents OdbNetwork resource. + ~.database.ListDatabasesResponse: + The response for ``Database.List``. """ http_options = ( - _BaseOracleDatabaseRestTransport._BaseGetOdbNetwork._get_http_options() + _BaseOracleDatabaseRestTransport._BaseListDatabases._get_http_options() ) - request, metadata = self._interceptor.pre_get_odb_network(request, metadata) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseGetOdbNetwork._get_transcoded_request( + request, metadata = self._interceptor.pre_list_databases(request, metadata) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListDatabases._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseGetOdbNetwork._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListDatabases._get_query_params_json( transcoded_request ) @@ -7595,17 +12480,17 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GetOdbNetwork", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListDatabases", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "GetOdbNetwork", + "rpcName": "ListDatabases", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._GetOdbNetwork._get_response( + response = OracleDatabaseRestTransport._ListDatabases._get_response( self._host, metadata, query_params, @@ -7620,21 +12505,21 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = odb_network.OdbNetwork() - pb_resp = odb_network.OdbNetwork.pb(resp) + resp = database.ListDatabasesResponse() + pb_resp = database.ListDatabasesResponse.pb(resp) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_get_odb_network(resp) + resp = self._interceptor.post_list_databases(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_get_odb_network_with_metadata( + resp, _ = self._interceptor.post_list_databases_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = odb_network.OdbNetwork.to_json(response) + response_payload = database.ListDatabasesResponse.to_json(response) except: response_payload = None http_response = { @@ -7643,21 +12528,21 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.get_odb_network", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_databases", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "GetOdbNetwork", + "rpcName": "ListDatabases", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _GetOdbSubnet( - _BaseOracleDatabaseRestTransport._BaseGetOdbSubnet, OracleDatabaseRestStub + class _ListDbNodes( + _BaseOracleDatabaseRestTransport._BaseListDbNodes, OracleDatabaseRestStub ): def __hash__(self): - return hash("OracleDatabaseRestTransport.GetOdbSubnet") + return hash("OracleDatabaseRestTransport.ListDbNodes") @staticmethod def _get_response( @@ -7683,17 +12568,17 @@ def _get_response( def __call__( self, - request: odb_subnet.GetOdbSubnetRequest, + request: oracledatabase.ListDbNodesRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> odb_subnet.OdbSubnet: - r"""Call the get odb subnet method over HTTP. + ) -> oracledatabase.ListDbNodesResponse: + r"""Call the list db nodes method over HTTP. Args: - request (~.odb_subnet.GetOdbSubnetRequest): - The request object. The request for ``OdbSubnet.Get``. + request (~.oracledatabase.ListDbNodesRequest): + The request object. The request for ``DbNode.List``. retry (google.api_core.retry.Retry): Designation of what errors, if any, should be retried. timeout (float): The timeout for this request. @@ -7703,21 +12588,21 @@ def __call__( be of type `bytes`. Returns: - ~.odb_subnet.OdbSubnet: - Represents OdbSubnet resource. + ~.oracledatabase.ListDbNodesResponse: + The response for ``DbNode.List``. """ http_options = ( - _BaseOracleDatabaseRestTransport._BaseGetOdbSubnet._get_http_options() + _BaseOracleDatabaseRestTransport._BaseListDbNodes._get_http_options() ) - request, metadata = self._interceptor.pre_get_odb_subnet(request, metadata) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseGetOdbSubnet._get_transcoded_request( + request, metadata = self._interceptor.pre_list_db_nodes(request, metadata) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListDbNodes._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseGetOdbSubnet._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListDbNodes._get_query_params_json( transcoded_request ) @@ -7739,17 +12624,17 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GetOdbSubnet", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListDbNodes", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "GetOdbSubnet", + "rpcName": "ListDbNodes", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._GetOdbSubnet._get_response( + response = OracleDatabaseRestTransport._ListDbNodes._get_response( self._host, metadata, query_params, @@ -7764,21 +12649,23 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = odb_subnet.OdbSubnet() - pb_resp = odb_subnet.OdbSubnet.pb(resp) + resp = oracledatabase.ListDbNodesResponse() + pb_resp = oracledatabase.ListDbNodesResponse.pb(resp) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_get_odb_subnet(resp) + resp = self._interceptor.post_list_db_nodes(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_get_odb_subnet_with_metadata( + resp, _ = self._interceptor.post_list_db_nodes_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = odb_subnet.OdbSubnet.to_json(response) + response_payload = oracledatabase.ListDbNodesResponse.to_json( + response + ) except: response_payload = None http_response = { @@ -7787,22 +12674,21 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.get_odb_subnet", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_db_nodes", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "GetOdbSubnet", + "rpcName": "ListDbNodes", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _GetPluggableDatabase( - _BaseOracleDatabaseRestTransport._BaseGetPluggableDatabase, - OracleDatabaseRestStub, + class _ListDbServers( + _BaseOracleDatabaseRestTransport._BaseListDbServers, OracleDatabaseRestStub ): def __hash__(self): - return hash("OracleDatabaseRestTransport.GetPluggableDatabase") + return hash("OracleDatabaseRestTransport.ListDbServers") @staticmethod def _get_response( @@ -7828,17 +12714,17 @@ def _get_response( def __call__( self, - request: pluggable_database.GetPluggableDatabaseRequest, + request: oracledatabase.ListDbServersRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> pluggable_database.PluggableDatabase: - r"""Call the get pluggable database method over HTTP. + ) -> oracledatabase.ListDbServersResponse: + r"""Call the list db servers method over HTTP. Args: - request (~.pluggable_database.GetPluggableDatabaseRequest): - The request object. The request for ``PluggableDatabase.Get``. + request (~.oracledatabase.ListDbServersRequest): + The request object. The request for ``DbServer.List``. retry (google.api_core.retry.Retry): Designation of what errors, if any, should be retried. timeout (float): The timeout for this request. @@ -7848,23 +12734,21 @@ def __call__( be of type `bytes`. Returns: - ~.pluggable_database.PluggableDatabase: - The PluggableDatabase resource. - https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/PluggableDatabase/ - + ~.oracledatabase.ListDbServersResponse: + The response for ``DbServer.List``. """ - http_options = _BaseOracleDatabaseRestTransport._BaseGetPluggableDatabase._get_http_options() - - request, metadata = self._interceptor.pre_get_pluggable_database( - request, metadata + http_options = ( + _BaseOracleDatabaseRestTransport._BaseListDbServers._get_http_options() ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseGetPluggableDatabase._get_transcoded_request( + + request, metadata = self._interceptor.pre_list_db_servers(request, metadata) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListDbServers._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseGetPluggableDatabase._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListDbServers._get_query_params_json( transcoded_request ) @@ -7886,17 +12770,17 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.GetPluggableDatabase", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListDbServers", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "GetPluggableDatabase", + "rpcName": "ListDbServers", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._GetPluggableDatabase._get_response( + response = OracleDatabaseRestTransport._ListDbServers._get_response( self._host, metadata, query_params, @@ -7911,21 +12795,21 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = pluggable_database.PluggableDatabase() - pb_resp = pluggable_database.PluggableDatabase.pb(resp) + resp = oracledatabase.ListDbServersResponse() + pb_resp = oracledatabase.ListDbServersResponse.pb(resp) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_get_pluggable_database(resp) + resp = self._interceptor.post_list_db_servers(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_get_pluggable_database_with_metadata( + resp, _ = self._interceptor.post_list_db_servers_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = pluggable_database.PluggableDatabase.to_json( + response_payload = oracledatabase.ListDbServersResponse.to_json( response ) except: @@ -7936,22 +12820,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.get_pluggable_database", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_db_servers", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "GetPluggableDatabase", + "rpcName": "ListDbServers", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _ListAutonomousDatabaseBackups( - _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabaseBackups, + class _ListDbSystemInitialStorageSizes( + _BaseOracleDatabaseRestTransport._BaseListDbSystemInitialStorageSizes, OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.ListAutonomousDatabaseBackups") + return hash("OracleDatabaseRestTransport.ListDbSystemInitialStorageSizes") @staticmethod def _get_response( @@ -7977,18 +12861,18 @@ def _get_response( def __call__( self, - request: oracledatabase.ListAutonomousDatabaseBackupsRequest, + request: db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> oracledatabase.ListAutonomousDatabaseBackupsResponse: - r"""Call the list autonomous database - backups method over HTTP. + ) -> db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse: + r"""Call the list db system initial + storage sizes method over HTTP. Args: - request (~.oracledatabase.ListAutonomousDatabaseBackupsRequest): - The request object. The request for ``AutonomousDatabaseBackup.List``. + request (~.db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest): + The request object. The request for ``DbSystemInitialStorageSizes.List``. retry (google.api_core.retry.Retry): Designation of what errors, if any, should be retried. timeout (float): The timeout for this request. @@ -7998,21 +12882,23 @@ def __call__( be of type `bytes`. Returns: - ~.oracledatabase.ListAutonomousDatabaseBackupsResponse: - The response for ``AutonomousDatabaseBackup.List``. + ~.db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse: + The response for ``DbSystemInitialStorageSizes.List``. """ - http_options = _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabaseBackups._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseListDbSystemInitialStorageSizes._get_http_options() - request, metadata = self._interceptor.pre_list_autonomous_database_backups( - request, metadata + request, metadata = ( + self._interceptor.pre_list_db_system_initial_storage_sizes( + request, metadata + ) ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabaseBackups._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListDbSystemInitialStorageSizes._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabaseBackups._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListDbSystemInitialStorageSizes._get_query_params_json( transcoded_request ) @@ -8034,17 +12920,17 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListAutonomousDatabaseBackups", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListDbSystemInitialStorageSizes", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListAutonomousDatabaseBackups", + "rpcName": "ListDbSystemInitialStorageSizes", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._ListAutonomousDatabaseBackups._get_response( + response = OracleDatabaseRestTransport._ListDbSystemInitialStorageSizes._get_response( self._host, metadata, query_params, @@ -8059,15 +12945,19 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = oracledatabase.ListAutonomousDatabaseBackupsResponse() - pb_resp = oracledatabase.ListAutonomousDatabaseBackupsResponse.pb(resp) + resp = ( + db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse() + ) + pb_resp = db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse.pb( + resp + ) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_list_autonomous_database_backups(resp) + resp = self._interceptor.post_list_db_system_initial_storage_sizes(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] resp, _ = ( - self._interceptor.post_list_autonomous_database_backups_with_metadata( + self._interceptor.post_list_db_system_initial_storage_sizes_with_metadata( resp, response_metadata ) ) @@ -8075,10 +12965,8 @@ def __call__( logging.DEBUG ): # pragma: NO COVER try: - response_payload = ( - oracledatabase.ListAutonomousDatabaseBackupsResponse.to_json( - response - ) + response_payload = db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse.to_json( + response ) except: response_payload = None @@ -8088,24 +12976,21 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_autonomous_database_backups", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_db_system_initial_storage_sizes", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListAutonomousDatabaseBackups", + "rpcName": "ListDbSystemInitialStorageSizes", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _ListAutonomousDatabaseCharacterSets( - _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabaseCharacterSets, - OracleDatabaseRestStub, + class _ListDbSystems( + _BaseOracleDatabaseRestTransport._BaseListDbSystems, OracleDatabaseRestStub ): def __hash__(self): - return hash( - "OracleDatabaseRestTransport.ListAutonomousDatabaseCharacterSets" - ) + return hash("OracleDatabaseRestTransport.ListDbSystems") @staticmethod def _get_response( @@ -8131,46 +13016,41 @@ def _get_response( def __call__( self, - request: oracledatabase.ListAutonomousDatabaseCharacterSetsRequest, + request: db_system.ListDbSystemsRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> oracledatabase.ListAutonomousDatabaseCharacterSetsResponse: - r"""Call the list autonomous database - character sets method over HTTP. - - Args: - request (~.oracledatabase.ListAutonomousDatabaseCharacterSetsRequest): - The request object. The request for ``AutonomousDatabaseCharacterSet.List``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + ) -> db_system.ListDbSystemsResponse: + r"""Call the list db systems method over HTTP. - Returns: - ~.oracledatabase.ListAutonomousDatabaseCharacterSetsResponse: - The response for - ``AutonomousDatabaseCharacterSet.List``. + Args: + request (~.db_system.ListDbSystemsRequest): + The request object. The request for ``DbSystem.List``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + Returns: + ~.db_system.ListDbSystemsResponse: + The response for ``DbSystem.List``. """ - http_options = _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabaseCharacterSets._get_http_options() - - request, metadata = ( - self._interceptor.pre_list_autonomous_database_character_sets( - request, metadata - ) + http_options = ( + _BaseOracleDatabaseRestTransport._BaseListDbSystems._get_http_options() ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabaseCharacterSets._get_transcoded_request( + + request, metadata = self._interceptor.pre_list_db_systems(request, metadata) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListDbSystems._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabaseCharacterSets._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListDbSystems._get_query_params_json( transcoded_request ) @@ -8192,17 +13072,17 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListAutonomousDatabaseCharacterSets", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListDbSystems", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListAutonomousDatabaseCharacterSets", + "rpcName": "ListDbSystems", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._ListAutonomousDatabaseCharacterSets._get_response( + response = OracleDatabaseRestTransport._ListDbSystems._get_response( self._host, metadata, query_params, @@ -8217,27 +13097,21 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = oracledatabase.ListAutonomousDatabaseCharacterSetsResponse() - pb_resp = oracledatabase.ListAutonomousDatabaseCharacterSetsResponse.pb( - resp - ) + resp = db_system.ListDbSystemsResponse() + pb_resp = db_system.ListDbSystemsResponse.pb(resp) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_list_autonomous_database_character_sets(resp) + resp = self._interceptor.post_list_db_systems(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = ( - self._interceptor.post_list_autonomous_database_character_sets_with_metadata( - resp, response_metadata - ) + resp, _ = self._interceptor.post_list_db_systems_with_metadata( + resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = oracledatabase.ListAutonomousDatabaseCharacterSetsResponse.to_json( - response - ) + response_payload = db_system.ListDbSystemsResponse.to_json(response) except: response_payload = None http_response = { @@ -8246,22 +13120,21 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_autonomous_database_character_sets", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_db_systems", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListAutonomousDatabaseCharacterSets", + "rpcName": "ListDbSystems", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _ListAutonomousDatabases( - _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabases, - OracleDatabaseRestStub, + class _ListDbSystemShapes( + _BaseOracleDatabaseRestTransport._BaseListDbSystemShapes, OracleDatabaseRestStub ): def __hash__(self): - return hash("OracleDatabaseRestTransport.ListAutonomousDatabases") + return hash("OracleDatabaseRestTransport.ListDbSystemShapes") @staticmethod def _get_response( @@ -8287,17 +13160,17 @@ def _get_response( def __call__( self, - request: oracledatabase.ListAutonomousDatabasesRequest, + request: oracledatabase.ListDbSystemShapesRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> oracledatabase.ListAutonomousDatabasesResponse: - r"""Call the list autonomous databases method over HTTP. + ) -> oracledatabase.ListDbSystemShapesResponse: + r"""Call the list db system shapes method over HTTP. Args: - request (~.oracledatabase.ListAutonomousDatabasesRequest): - The request object. The request for ``AutonomousDatabase.List``. + request (~.oracledatabase.ListDbSystemShapesRequest): + The request object. The request for ``DbSystemShape.List``. retry (google.api_core.retry.Retry): Designation of what errors, if any, should be retried. timeout (float): The timeout for this request. @@ -8307,21 +13180,21 @@ def __call__( be of type `bytes`. Returns: - ~.oracledatabase.ListAutonomousDatabasesResponse: - The response for ``AutonomousDatabase.List``. + ~.oracledatabase.ListDbSystemShapesResponse: + The response for ``DbSystemShape.List``. """ - http_options = _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabases._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseListDbSystemShapes._get_http_options() - request, metadata = self._interceptor.pre_list_autonomous_databases( + request, metadata = self._interceptor.pre_list_db_system_shapes( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabases._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListDbSystemShapes._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabases._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListDbSystemShapes._get_query_params_json( transcoded_request ) @@ -8343,25 +13216,23 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListAutonomousDatabases", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListDbSystemShapes", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListAutonomousDatabases", + "rpcName": "ListDbSystemShapes", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = ( - OracleDatabaseRestTransport._ListAutonomousDatabases._get_response( - self._host, - metadata, - query_params, - self._session, - timeout, - transcoded_request, - ) + response = OracleDatabaseRestTransport._ListDbSystemShapes._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, ) # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception @@ -8370,14 +13241,14 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = oracledatabase.ListAutonomousDatabasesResponse() - pb_resp = oracledatabase.ListAutonomousDatabasesResponse.pb(resp) + resp = oracledatabase.ListDbSystemShapesResponse() + pb_resp = oracledatabase.ListDbSystemShapesResponse.pb(resp) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_list_autonomous_databases(resp) + resp = self._interceptor.post_list_db_system_shapes(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_list_autonomous_databases_with_metadata( + resp, _ = self._interceptor.post_list_db_system_shapes_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( @@ -8385,7 +13256,7 @@ def __call__( ): # pragma: NO COVER try: response_payload = ( - oracledatabase.ListAutonomousDatabasesResponse.to_json(response) + oracledatabase.ListDbSystemShapesResponse.to_json(response) ) except: response_payload = None @@ -8395,22 +13266,21 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_autonomous_databases", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_db_system_shapes", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListAutonomousDatabases", + "rpcName": "ListDbSystemShapes", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _ListAutonomousDbVersions( - _BaseOracleDatabaseRestTransport._BaseListAutonomousDbVersions, - OracleDatabaseRestStub, + class _ListDbVersions( + _BaseOracleDatabaseRestTransport._BaseListDbVersions, OracleDatabaseRestStub ): def __hash__(self): - return hash("OracleDatabaseRestTransport.ListAutonomousDbVersions") + return hash("OracleDatabaseRestTransport.ListDbVersions") @staticmethod def _get_response( @@ -8436,42 +13306,43 @@ def _get_response( def __call__( self, - request: oracledatabase.ListAutonomousDbVersionsRequest, + request: db_version.ListDbVersionsRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> oracledatabase.ListAutonomousDbVersionsResponse: - r"""Call the list autonomous db - versions method over HTTP. + ) -> db_version.ListDbVersionsResponse: + r"""Call the list db versions method over HTTP. - Args: - request (~.oracledatabase.ListAutonomousDbVersionsRequest): - The request object. The request for ``AutonomousDbVersion.List``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + Args: + request (~.db_version.ListDbVersionsRequest): + The request object. The request for ``DbVersions.List``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. - Returns: - ~.oracledatabase.ListAutonomousDbVersionsResponse: - The response for ``AutonomousDbVersion.List``. + Returns: + ~.db_version.ListDbVersionsResponse: + The response for ``DbVersions.List``. """ - http_options = _BaseOracleDatabaseRestTransport._BaseListAutonomousDbVersions._get_http_options() + http_options = ( + _BaseOracleDatabaseRestTransport._BaseListDbVersions._get_http_options() + ) - request, metadata = self._interceptor.pre_list_autonomous_db_versions( + request, metadata = self._interceptor.pre_list_db_versions( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseListAutonomousDbVersions._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListDbVersions._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseListAutonomousDbVersions._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListDbVersions._get_query_params_json( transcoded_request ) @@ -8493,25 +13364,23 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListAutonomousDbVersions", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListDbVersions", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListAutonomousDbVersions", + "rpcName": "ListDbVersions", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = ( - OracleDatabaseRestTransport._ListAutonomousDbVersions._get_response( - self._host, - metadata, - query_params, - self._session, - timeout, - transcoded_request, - ) + response = OracleDatabaseRestTransport._ListDbVersions._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, ) # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception @@ -8520,24 +13389,22 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = oracledatabase.ListAutonomousDbVersionsResponse() - pb_resp = oracledatabase.ListAutonomousDbVersionsResponse.pb(resp) + resp = db_version.ListDbVersionsResponse() + pb_resp = db_version.ListDbVersionsResponse.pb(resp) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_list_autonomous_db_versions(resp) + resp = self._interceptor.post_list_db_versions(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_list_autonomous_db_versions_with_metadata( + resp, _ = self._interceptor.post_list_db_versions_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = ( - oracledatabase.ListAutonomousDbVersionsResponse.to_json( - response - ) + response_payload = db_version.ListDbVersionsResponse.to_json( + response ) except: response_payload = None @@ -8547,22 +13414,21 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_autonomous_db_versions", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_db_versions", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListAutonomousDbVersions", + "rpcName": "ListDbVersions", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _ListCloudExadataInfrastructures( - _BaseOracleDatabaseRestTransport._BaseListCloudExadataInfrastructures, - OracleDatabaseRestStub, + class _ListEntitlements( + _BaseOracleDatabaseRestTransport._BaseListEntitlements, OracleDatabaseRestStub ): def __hash__(self): - return hash("OracleDatabaseRestTransport.ListCloudExadataInfrastructures") + return hash("OracleDatabaseRestTransport.ListEntitlements") @staticmethod def _get_response( @@ -8588,44 +13454,41 @@ def _get_response( def __call__( self, - request: oracledatabase.ListCloudExadataInfrastructuresRequest, + request: oracledatabase.ListEntitlementsRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> oracledatabase.ListCloudExadataInfrastructuresResponse: - r"""Call the list cloud exadata - infrastructures method over HTTP. + ) -> oracledatabase.ListEntitlementsResponse: + r"""Call the list entitlements method over HTTP. - Args: - request (~.oracledatabase.ListCloudExadataInfrastructuresRequest): - The request object. The request for ``CloudExadataInfrastructures.List``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + Args: + request (~.oracledatabase.ListEntitlementsRequest): + The request object. The request for ``Entitlement.List``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. - Returns: - ~.oracledatabase.ListCloudExadataInfrastructuresResponse: - The response for ``CloudExadataInfrastructures.list``. + Returns: + ~.oracledatabase.ListEntitlementsResponse: + The response for ``Entitlement.List``. """ - http_options = _BaseOracleDatabaseRestTransport._BaseListCloudExadataInfrastructures._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseListEntitlements._get_http_options() - request, metadata = ( - self._interceptor.pre_list_cloud_exadata_infrastructures( - request, metadata - ) + request, metadata = self._interceptor.pre_list_entitlements( + request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseListCloudExadataInfrastructures._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListEntitlements._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseListCloudExadataInfrastructures._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListEntitlements._get_query_params_json( transcoded_request ) @@ -8647,17 +13510,17 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListCloudExadataInfrastructures", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListEntitlements", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListCloudExadataInfrastructures", + "rpcName": "ListEntitlements", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._ListCloudExadataInfrastructures._get_response( + response = OracleDatabaseRestTransport._ListEntitlements._get_response( self._host, metadata, query_params, @@ -8672,26 +13535,22 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = oracledatabase.ListCloudExadataInfrastructuresResponse() - pb_resp = oracledatabase.ListCloudExadataInfrastructuresResponse.pb(resp) + resp = oracledatabase.ListEntitlementsResponse() + pb_resp = oracledatabase.ListEntitlementsResponse.pb(resp) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_list_cloud_exadata_infrastructures(resp) + resp = self._interceptor.post_list_entitlements(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = ( - self._interceptor.post_list_cloud_exadata_infrastructures_with_metadata( - resp, response_metadata - ) + resp, _ = self._interceptor.post_list_entitlements_with_metadata( + resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = ( - oracledatabase.ListCloudExadataInfrastructuresResponse.to_json( - response - ) + response_payload = oracledatabase.ListEntitlementsResponse.to_json( + response ) except: response_payload = None @@ -8701,22 +13560,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_cloud_exadata_infrastructures", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_entitlements", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListCloudExadataInfrastructures", + "rpcName": "ListEntitlements", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _ListCloudVmClusters( - _BaseOracleDatabaseRestTransport._BaseListCloudVmClusters, + class _ListExadbVmClusters( + _BaseOracleDatabaseRestTransport._BaseListExadbVmClusters, OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.ListCloudVmClusters") + return hash("OracleDatabaseRestTransport.ListExadbVmClusters") @staticmethod def _get_response( @@ -8742,17 +13601,17 @@ def _get_response( def __call__( self, - request: oracledatabase.ListCloudVmClustersRequest, + request: oracledatabase.ListExadbVmClustersRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> oracledatabase.ListCloudVmClustersResponse: - r"""Call the list cloud vm clusters method over HTTP. + ) -> oracledatabase.ListExadbVmClustersResponse: + r"""Call the list exadb vm clusters method over HTTP. Args: - request (~.oracledatabase.ListCloudVmClustersRequest): - The request object. The request for ``CloudVmCluster.List``. + request (~.oracledatabase.ListExadbVmClustersRequest): + The request object. The request for ``ExadbVmCluster.List``. retry (google.api_core.retry.Retry): Designation of what errors, if any, should be retried. timeout (float): The timeout for this request. @@ -8762,21 +13621,21 @@ def __call__( be of type `bytes`. Returns: - ~.oracledatabase.ListCloudVmClustersResponse: - The response for ``CloudVmCluster.List``. + ~.oracledatabase.ListExadbVmClustersResponse: + The response for ``ExadbVmCluster.List``. """ - http_options = _BaseOracleDatabaseRestTransport._BaseListCloudVmClusters._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseListExadbVmClusters._get_http_options() - request, metadata = self._interceptor.pre_list_cloud_vm_clusters( + request, metadata = self._interceptor.pre_list_exadb_vm_clusters( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseListCloudVmClusters._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListExadbVmClusters._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseListCloudVmClusters._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListExadbVmClusters._get_query_params_json( transcoded_request ) @@ -8798,17 +13657,17 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListCloudVmClusters", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListExadbVmClusters", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListCloudVmClusters", + "rpcName": "ListExadbVmClusters", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._ListCloudVmClusters._get_response( + response = OracleDatabaseRestTransport._ListExadbVmClusters._get_response( self._host, metadata, query_params, @@ -8823,14 +13682,14 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = oracledatabase.ListCloudVmClustersResponse() - pb_resp = oracledatabase.ListCloudVmClustersResponse.pb(resp) + resp = oracledatabase.ListExadbVmClustersResponse() + pb_resp = oracledatabase.ListExadbVmClustersResponse.pb(resp) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_list_cloud_vm_clusters(resp) + resp = self._interceptor.post_list_exadb_vm_clusters(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_list_cloud_vm_clusters_with_metadata( + resp, _ = self._interceptor.post_list_exadb_vm_clusters_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( @@ -8838,7 +13697,7 @@ def __call__( ): # pragma: NO COVER try: response_payload = ( - oracledatabase.ListCloudVmClustersResponse.to_json(response) + oracledatabase.ListExadbVmClustersResponse.to_json(response) ) except: response_payload = None @@ -8848,22 +13707,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_cloud_vm_clusters", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_exadb_vm_clusters", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListCloudVmClusters", + "rpcName": "ListExadbVmClusters", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _ListDatabaseCharacterSets( - _BaseOracleDatabaseRestTransport._BaseListDatabaseCharacterSets, + class _ListExascaleDbStorageVaults( + _BaseOracleDatabaseRestTransport._BaseListExascaleDbStorageVaults, OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.ListDatabaseCharacterSets") + return hash("OracleDatabaseRestTransport.ListExascaleDbStorageVaults") @staticmethod def _get_response( @@ -8889,18 +13748,18 @@ def _get_response( def __call__( self, - request: database_character_set.ListDatabaseCharacterSetsRequest, + request: exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> database_character_set.ListDatabaseCharacterSetsResponse: - r"""Call the list database character - sets method over HTTP. + ) -> exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse: + r"""Call the list exascale db storage + vaults method over HTTP. Args: - request (~.database_character_set.ListDatabaseCharacterSetsRequest): - The request object. The request for ``DatabaseCharacterSet.List``. + request (~.exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest): + The request object. The request for ``ExascaleDbStorageVault.List``. retry (google.api_core.retry.Retry): Designation of what errors, if any, should be retried. timeout (float): The timeout for this request. @@ -8910,21 +13769,21 @@ def __call__( be of type `bytes`. Returns: - ~.database_character_set.ListDatabaseCharacterSetsResponse: - The response for ``DatabaseCharacterSet.List``. + ~.exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse: + The response for ``ExascaleDbStorageVault.List``. """ - http_options = _BaseOracleDatabaseRestTransport._BaseListDatabaseCharacterSets._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseListExascaleDbStorageVaults._get_http_options() - request, metadata = self._interceptor.pre_list_database_character_sets( + request, metadata = self._interceptor.pre_list_exascale_db_storage_vaults( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseListDatabaseCharacterSets._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListExascaleDbStorageVaults._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseListDatabaseCharacterSets._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListExascaleDbStorageVaults._get_query_params_json( transcoded_request ) @@ -8946,10 +13805,10 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListDatabaseCharacterSets", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListExascaleDbStorageVaults", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListDatabaseCharacterSets", + "rpcName": "ListExascaleDbStorageVaults", "httpRequest": http_request, "metadata": http_request["headers"], }, @@ -8957,7 +13816,7 @@ def __call__( # Send the request response = ( - OracleDatabaseRestTransport._ListDatabaseCharacterSets._get_response( + OracleDatabaseRestTransport._ListExascaleDbStorageVaults._get_response( self._host, metadata, query_params, @@ -8973,21 +13832,25 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = database_character_set.ListDatabaseCharacterSetsResponse() - pb_resp = database_character_set.ListDatabaseCharacterSetsResponse.pb(resp) + resp = exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse() + pb_resp = exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse.pb( + resp + ) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_list_database_character_sets(resp) - response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_list_database_character_sets_with_metadata( - resp, response_metadata + resp = self._interceptor.post_list_exascale_db_storage_vaults(resp) + response_metadata = [(k, str(v)) for k, v in response.headers.items()] + resp, _ = ( + self._interceptor.post_list_exascale_db_storage_vaults_with_metadata( + resp, response_metadata + ) ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = database_character_set.ListDatabaseCharacterSetsResponse.to_json( + response_payload = exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse.to_json( response ) except: @@ -8998,21 +13861,21 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_database_character_sets", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_exascale_db_storage_vaults", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListDatabaseCharacterSets", + "rpcName": "ListExascaleDbStorageVaults", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _ListDatabases( - _BaseOracleDatabaseRestTransport._BaseListDatabases, OracleDatabaseRestStub + class _ListGiVersions( + _BaseOracleDatabaseRestTransport._BaseListGiVersions, OracleDatabaseRestStub ): def __hash__(self): - return hash("OracleDatabaseRestTransport.ListDatabases") + return hash("OracleDatabaseRestTransport.ListGiVersions") @staticmethod def _get_response( @@ -9038,17 +13901,17 @@ def _get_response( def __call__( self, - request: database.ListDatabasesRequest, + request: oracledatabase.ListGiVersionsRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> database.ListDatabasesResponse: - r"""Call the list databases method over HTTP. + ) -> oracledatabase.ListGiVersionsResponse: + r"""Call the list gi versions method over HTTP. Args: - request (~.database.ListDatabasesRequest): - The request object. The request for ``Database.List``. + request (~.oracledatabase.ListGiVersionsRequest): + The request object. The request for ``GiVersion.List``. retry (google.api_core.retry.Retry): Designation of what errors, if any, should be retried. timeout (float): The timeout for this request. @@ -9058,21 +13921,23 @@ def __call__( be of type `bytes`. Returns: - ~.database.ListDatabasesResponse: - The response for ``Database.List``. + ~.oracledatabase.ListGiVersionsResponse: + The response for ``GiVersion.List``. """ http_options = ( - _BaseOracleDatabaseRestTransport._BaseListDatabases._get_http_options() + _BaseOracleDatabaseRestTransport._BaseListGiVersions._get_http_options() ) - request, metadata = self._interceptor.pre_list_databases(request, metadata) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseListDatabases._get_transcoded_request( + request, metadata = self._interceptor.pre_list_gi_versions( + request, metadata + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListGiVersions._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseListDatabases._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListGiVersions._get_query_params_json( transcoded_request ) @@ -9094,17 +13959,17 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListDatabases", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListGiVersions", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListDatabases", + "rpcName": "ListGiVersions", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._ListDatabases._get_response( + response = OracleDatabaseRestTransport._ListGiVersions._get_response( self._host, metadata, query_params, @@ -9119,21 +13984,23 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = database.ListDatabasesResponse() - pb_resp = database.ListDatabasesResponse.pb(resp) + resp = oracledatabase.ListGiVersionsResponse() + pb_resp = oracledatabase.ListGiVersionsResponse.pb(resp) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_list_databases(resp) + resp = self._interceptor.post_list_gi_versions(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_list_databases_with_metadata( + resp, _ = self._interceptor.post_list_gi_versions_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = database.ListDatabasesResponse.to_json(response) + response_payload = oracledatabase.ListGiVersionsResponse.to_json( + response + ) except: response_payload = None http_response = { @@ -9142,21 +14009,24 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_databases", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_gi_versions", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListDatabases", + "rpcName": "ListGiVersions", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _ListDbNodes( - _BaseOracleDatabaseRestTransport._BaseListDbNodes, OracleDatabaseRestStub + class _ListGoldengateConnectionAssignments( + _BaseOracleDatabaseRestTransport._BaseListGoldengateConnectionAssignments, + OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.ListDbNodes") + return hash( + "OracleDatabaseRestTransport.ListGoldengateConnectionAssignments" + ) @staticmethod def _get_response( @@ -9182,41 +14052,49 @@ def _get_response( def __call__( self, - request: oracledatabase.ListDbNodesRequest, + request: goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> oracledatabase.ListDbNodesResponse: - r"""Call the list db nodes method over HTTP. + ) -> ( + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse + ): + r"""Call the list goldengate + connection assignments method over HTTP. - Args: - request (~.oracledatabase.ListDbNodesRequest): - The request object. The request for ``DbNode.List``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + Args: + request (~.goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest): + The request object. Request message for listing + GoldengateConnectionAssignments. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse: + Response message for listing + GoldengateConnectionAssignments. - Returns: - ~.oracledatabase.ListDbNodesResponse: - The response for ``DbNode.List``. """ - http_options = ( - _BaseOracleDatabaseRestTransport._BaseListDbNodes._get_http_options() - ) + http_options = _BaseOracleDatabaseRestTransport._BaseListGoldengateConnectionAssignments._get_http_options() - request, metadata = self._interceptor.pre_list_db_nodes(request, metadata) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseListDbNodes._get_transcoded_request( + request, metadata = ( + self._interceptor.pre_list_goldengate_connection_assignments( + request, metadata + ) + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListGoldengateConnectionAssignments._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseListDbNodes._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListGoldengateConnectionAssignments._get_query_params_json( transcoded_request ) @@ -9238,17 +14116,17 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListDbNodes", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListGoldengateConnectionAssignments", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListDbNodes", + "rpcName": "ListGoldengateConnectionAssignments", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._ListDbNodes._get_response( + response = OracleDatabaseRestTransport._ListGoldengateConnectionAssignments._get_response( self._host, metadata, query_params, @@ -9263,21 +14141,25 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = oracledatabase.ListDbNodesResponse() - pb_resp = oracledatabase.ListDbNodesResponse.pb(resp) + resp = goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse() + pb_resp = goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse.pb( + resp + ) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_list_db_nodes(resp) + resp = self._interceptor.post_list_goldengate_connection_assignments(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_list_db_nodes_with_metadata( - resp, response_metadata + resp, _ = ( + self._interceptor.post_list_goldengate_connection_assignments_with_metadata( + resp, response_metadata + ) ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = oracledatabase.ListDbNodesResponse.to_json( + response_payload = goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse.to_json( response ) except: @@ -9288,21 +14170,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_db_nodes", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_goldengate_connection_assignments", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListDbNodes", + "rpcName": "ListGoldengateConnectionAssignments", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _ListDbServers( - _BaseOracleDatabaseRestTransport._BaseListDbServers, OracleDatabaseRestStub + class _ListGoldengateConnections( + _BaseOracleDatabaseRestTransport._BaseListGoldengateConnections, + OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.ListDbServers") + return hash("OracleDatabaseRestTransport.ListGoldengateConnections") @staticmethod def _get_response( @@ -9328,41 +14211,42 @@ def _get_response( def __call__( self, - request: oracledatabase.ListDbServersRequest, + request: goldengate_connection.ListGoldengateConnectionsRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> oracledatabase.ListDbServersResponse: - r"""Call the list db servers method over HTTP. + ) -> goldengate_connection.ListGoldengateConnectionsResponse: + r"""Call the list goldengate + connections method over HTTP. - Args: - request (~.oracledatabase.ListDbServersRequest): - The request object. The request for ``DbServer.List``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + Args: + request (~.goldengate_connection.ListGoldengateConnectionsRequest): + The request object. The request for ``GoldengateConnection.List``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. - Returns: - ~.oracledatabase.ListDbServersResponse: - The response for ``DbServer.List``. + Returns: + ~.goldengate_connection.ListGoldengateConnectionsResponse: + The response for ``GoldengateConnection.List``. """ - http_options = ( - _BaseOracleDatabaseRestTransport._BaseListDbServers._get_http_options() - ) + http_options = _BaseOracleDatabaseRestTransport._BaseListGoldengateConnections._get_http_options() - request, metadata = self._interceptor.pre_list_db_servers(request, metadata) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseListDbServers._get_transcoded_request( + request, metadata = self._interceptor.pre_list_goldengate_connections( + request, metadata + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListGoldengateConnections._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseListDbServers._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListGoldengateConnections._get_query_params_json( transcoded_request ) @@ -9384,23 +14268,25 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListDbServers", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListGoldengateConnections", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListDbServers", + "rpcName": "ListGoldengateConnections", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._ListDbServers._get_response( - self._host, - metadata, - query_params, - self._session, - timeout, - transcoded_request, + response = ( + OracleDatabaseRestTransport._ListGoldengateConnections._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + ) ) # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception @@ -9409,22 +14295,24 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = oracledatabase.ListDbServersResponse() - pb_resp = oracledatabase.ListDbServersResponse.pb(resp) + resp = goldengate_connection.ListGoldengateConnectionsResponse() + pb_resp = goldengate_connection.ListGoldengateConnectionsResponse.pb(resp) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_list_db_servers(resp) + resp = self._interceptor.post_list_goldengate_connections(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_list_db_servers_with_metadata( + resp, _ = self._interceptor.post_list_goldengate_connections_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = oracledatabase.ListDbServersResponse.to_json( - response + response_payload = ( + goldengate_connection.ListGoldengateConnectionsResponse.to_json( + response + ) ) except: response_payload = None @@ -9434,22 +14322,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_db_servers", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_goldengate_connections", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListDbServers", + "rpcName": "ListGoldengateConnections", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _ListDbSystemInitialStorageSizes( - _BaseOracleDatabaseRestTransport._BaseListDbSystemInitialStorageSizes, + class _ListGoldengateConnectionTypes( + _BaseOracleDatabaseRestTransport._BaseListGoldengateConnectionTypes, OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.ListDbSystemInitialStorageSizes") + return hash("OracleDatabaseRestTransport.ListGoldengateConnectionTypes") @staticmethod def _get_response( @@ -9475,18 +14363,19 @@ def _get_response( def __call__( self, - request: db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest, + request: goldengate_connection_type.ListGoldengateConnectionTypesRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse: - r"""Call the list db system initial - storage sizes method over HTTP. + ) -> goldengate_connection_type.ListGoldengateConnectionTypesResponse: + r"""Call the list goldengate + connection types method over HTTP. Args: - request (~.db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest): - The request object. The request for ``DbSystemInitialStorageSizes.List``. + request (~.goldengate_connection_type.ListGoldengateConnectionTypesRequest): + The request object. Message for listing + GoldengateConnectionTypes. retry (google.api_core.retry.Retry): Designation of what errors, if any, should be retried. timeout (float): The timeout for this request. @@ -9496,23 +14385,23 @@ def __call__( be of type `bytes`. Returns: - ~.db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse: - The response for ``DbSystemInitialStorageSizes.List``. + ~.goldengate_connection_type.ListGoldengateConnectionTypesResponse: + Message for response to listing + GoldengateConnectionTypes + """ - http_options = _BaseOracleDatabaseRestTransport._BaseListDbSystemInitialStorageSizes._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseListGoldengateConnectionTypes._get_http_options() - request, metadata = ( - self._interceptor.pre_list_db_system_initial_storage_sizes( - request, metadata - ) + request, metadata = self._interceptor.pre_list_goldengate_connection_types( + request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseListDbSystemInitialStorageSizes._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListGoldengateConnectionTypes._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseListDbSystemInitialStorageSizes._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListGoldengateConnectionTypes._get_query_params_json( transcoded_request ) @@ -9534,17 +14423,17 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListDbSystemInitialStorageSizes", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListGoldengateConnectionTypes", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListDbSystemInitialStorageSizes", + "rpcName": "ListGoldengateConnectionTypes", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._ListDbSystemInitialStorageSizes._get_response( + response = OracleDatabaseRestTransport._ListGoldengateConnectionTypes._get_response( self._host, metadata, query_params, @@ -9559,19 +14448,19 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = ( - db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse() - ) - pb_resp = db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse.pb( - resp + resp = goldengate_connection_type.ListGoldengateConnectionTypesResponse() + pb_resp = ( + goldengate_connection_type.ListGoldengateConnectionTypesResponse.pb( + resp + ) ) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_list_db_system_initial_storage_sizes(resp) + resp = self._interceptor.post_list_goldengate_connection_types(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] resp, _ = ( - self._interceptor.post_list_db_system_initial_storage_sizes_with_metadata( + self._interceptor.post_list_goldengate_connection_types_with_metadata( resp, response_metadata ) ) @@ -9579,7 +14468,7 @@ def __call__( logging.DEBUG ): # pragma: NO COVER try: - response_payload = db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse.to_json( + response_payload = goldengate_connection_type.ListGoldengateConnectionTypesResponse.to_json( response ) except: @@ -9590,21 +14479,24 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_db_system_initial_storage_sizes", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_goldengate_connection_types", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListDbSystemInitialStorageSizes", + "rpcName": "ListGoldengateConnectionTypes", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _ListDbSystems( - _BaseOracleDatabaseRestTransport._BaseListDbSystems, OracleDatabaseRestStub + class _ListGoldengateDeploymentEnvironments( + _BaseOracleDatabaseRestTransport._BaseListGoldengateDeploymentEnvironments, + OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.ListDbSystems") + return hash( + "OracleDatabaseRestTransport.ListGoldengateDeploymentEnvironments" + ) @staticmethod def _get_response( @@ -9630,41 +14522,47 @@ def _get_response( def __call__( self, - request: db_system.ListDbSystemsRequest, + request: goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> db_system.ListDbSystemsResponse: - r"""Call the list db systems method over HTTP. + ) -> goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse: + r"""Call the list goldengate + deployment environments method over HTTP. - Args: - request (~.db_system.ListDbSystemsRequest): - The request object. The request for ``DbSystem.List``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + Args: + request (~.goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest): + The request object. Message for listing + GoldengateDeploymentEnvironments. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse: + Message for response to listing + GoldengateDeploymentEnvironments - Returns: - ~.db_system.ListDbSystemsResponse: - The response for ``DbSystem.List``. """ - http_options = ( - _BaseOracleDatabaseRestTransport._BaseListDbSystems._get_http_options() - ) + http_options = _BaseOracleDatabaseRestTransport._BaseListGoldengateDeploymentEnvironments._get_http_options() - request, metadata = self._interceptor.pre_list_db_systems(request, metadata) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseListDbSystems._get_transcoded_request( + request, metadata = ( + self._interceptor.pre_list_goldengate_deployment_environments( + request, metadata + ) + ) + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListGoldengateDeploymentEnvironments._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseListDbSystems._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListGoldengateDeploymentEnvironments._get_query_params_json( transcoded_request ) @@ -9686,17 +14584,17 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListDbSystems", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListGoldengateDeploymentEnvironments", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListDbSystems", + "rpcName": "ListGoldengateDeploymentEnvironments", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._ListDbSystems._get_response( + response = OracleDatabaseRestTransport._ListGoldengateDeploymentEnvironments._get_response( self._host, metadata, query_params, @@ -9711,21 +14609,27 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = db_system.ListDbSystemsResponse() - pb_resp = db_system.ListDbSystemsResponse.pb(resp) + resp = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse() + pb_resp = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse.pb( + resp + ) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_list_db_systems(resp) + resp = self._interceptor.post_list_goldengate_deployment_environments(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_list_db_systems_with_metadata( - resp, response_metadata + resp, _ = ( + self._interceptor.post_list_goldengate_deployment_environments_with_metadata( + resp, response_metadata + ) ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = db_system.ListDbSystemsResponse.to_json(response) + response_payload = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse.to_json( + response + ) except: response_payload = None http_response = { @@ -9734,21 +14638,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_db_systems", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_goldengate_deployment_environments", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListDbSystems", + "rpcName": "ListGoldengateDeploymentEnvironments", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _ListDbSystemShapes( - _BaseOracleDatabaseRestTransport._BaseListDbSystemShapes, OracleDatabaseRestStub + class _ListGoldengateDeployments( + _BaseOracleDatabaseRestTransport._BaseListGoldengateDeployments, + OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.ListDbSystemShapes") + return hash("OracleDatabaseRestTransport.ListGoldengateDeployments") @staticmethod def _get_response( @@ -9774,41 +14679,42 @@ def _get_response( def __call__( self, - request: oracledatabase.ListDbSystemShapesRequest, + request: goldengate_deployment.ListGoldengateDeploymentsRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> oracledatabase.ListDbSystemShapesResponse: - r"""Call the list db system shapes method over HTTP. + ) -> goldengate_deployment.ListGoldengateDeploymentsResponse: + r"""Call the list goldengate + deployments method over HTTP. - Args: - request (~.oracledatabase.ListDbSystemShapesRequest): - The request object. The request for ``DbSystemShape.List``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + Args: + request (~.goldengate_deployment.ListGoldengateDeploymentsRequest): + The request object. The request for ``GoldengateDeployment.List``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. - Returns: - ~.oracledatabase.ListDbSystemShapesResponse: - The response for ``DbSystemShape.List``. + Returns: + ~.goldengate_deployment.ListGoldengateDeploymentsResponse: + The response for ``GoldengateDeployment.List``. """ - http_options = _BaseOracleDatabaseRestTransport._BaseListDbSystemShapes._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseListGoldengateDeployments._get_http_options() - request, metadata = self._interceptor.pre_list_db_system_shapes( + request, metadata = self._interceptor.pre_list_goldengate_deployments( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseListDbSystemShapes._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListGoldengateDeployments._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseListDbSystemShapes._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListGoldengateDeployments._get_query_params_json( transcoded_request ) @@ -9830,23 +14736,25 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListDbSystemShapes", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListGoldengateDeployments", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListDbSystemShapes", + "rpcName": "ListGoldengateDeployments", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._ListDbSystemShapes._get_response( - self._host, - metadata, - query_params, - self._session, - timeout, - transcoded_request, + response = ( + OracleDatabaseRestTransport._ListGoldengateDeployments._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + ) ) # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception @@ -9855,14 +14763,14 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = oracledatabase.ListDbSystemShapesResponse() - pb_resp = oracledatabase.ListDbSystemShapesResponse.pb(resp) + resp = goldengate_deployment.ListGoldengateDeploymentsResponse() + pb_resp = goldengate_deployment.ListGoldengateDeploymentsResponse.pb(resp) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_list_db_system_shapes(resp) + resp = self._interceptor.post_list_goldengate_deployments(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_list_db_system_shapes_with_metadata( + resp, _ = self._interceptor.post_list_goldengate_deployments_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( @@ -9870,7 +14778,9 @@ def __call__( ): # pragma: NO COVER try: response_payload = ( - oracledatabase.ListDbSystemShapesResponse.to_json(response) + goldengate_deployment.ListGoldengateDeploymentsResponse.to_json( + response + ) ) except: response_payload = None @@ -9880,21 +14790,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_db_system_shapes", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_goldengate_deployments", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListDbSystemShapes", + "rpcName": "ListGoldengateDeployments", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _ListDbVersions( - _BaseOracleDatabaseRestTransport._BaseListDbVersions, OracleDatabaseRestStub + class _ListGoldengateDeploymentTypes( + _BaseOracleDatabaseRestTransport._BaseListGoldengateDeploymentTypes, + OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.ListDbVersions") + return hash("OracleDatabaseRestTransport.ListGoldengateDeploymentTypes") @staticmethod def _get_response( @@ -9920,43 +14831,45 @@ def _get_response( def __call__( self, - request: db_version.ListDbVersionsRequest, + request: goldengate_deployment_type.ListGoldengateDeploymentTypesRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> db_version.ListDbVersionsResponse: - r"""Call the list db versions method over HTTP. + ) -> goldengate_deployment_type.ListGoldengateDeploymentTypesResponse: + r"""Call the list goldengate + deployment types method over HTTP. - Args: - request (~.db_version.ListDbVersionsRequest): - The request object. The request for ``DbVersions.List``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + Args: + request (~.goldengate_deployment_type.ListGoldengateDeploymentTypesRequest): + The request object. Message for listing + GoldengateDeploymentTypes. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.goldengate_deployment_type.ListGoldengateDeploymentTypesResponse: + Message for response to listing + GoldengateDeploymentTypes - Returns: - ~.db_version.ListDbVersionsResponse: - The response for ``DbVersions.List``. """ - http_options = ( - _BaseOracleDatabaseRestTransport._BaseListDbVersions._get_http_options() - ) + http_options = _BaseOracleDatabaseRestTransport._BaseListGoldengateDeploymentTypes._get_http_options() - request, metadata = self._interceptor.pre_list_db_versions( + request, metadata = self._interceptor.pre_list_goldengate_deployment_types( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseListDbVersions._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListGoldengateDeploymentTypes._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseListDbVersions._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListGoldengateDeploymentTypes._get_query_params_json( transcoded_request ) @@ -9978,17 +14891,17 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListDbVersions", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListGoldengateDeploymentTypes", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListDbVersions", + "rpcName": "ListGoldengateDeploymentTypes", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._ListDbVersions._get_response( + response = OracleDatabaseRestTransport._ListGoldengateDeploymentTypes._get_response( self._host, metadata, query_params, @@ -10003,21 +14916,27 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = db_version.ListDbVersionsResponse() - pb_resp = db_version.ListDbVersionsResponse.pb(resp) + resp = goldengate_deployment_type.ListGoldengateDeploymentTypesResponse() + pb_resp = ( + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse.pb( + resp + ) + ) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_list_db_versions(resp) + resp = self._interceptor.post_list_goldengate_deployment_types(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_list_db_versions_with_metadata( - resp, response_metadata + resp, _ = ( + self._interceptor.post_list_goldengate_deployment_types_with_metadata( + resp, response_metadata + ) ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = db_version.ListDbVersionsResponse.to_json( + response_payload = goldengate_deployment_type.ListGoldengateDeploymentTypesResponse.to_json( response ) except: @@ -10028,21 +14947,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_db_versions", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_goldengate_deployment_types", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListDbVersions", + "rpcName": "ListGoldengateDeploymentTypes", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _ListEntitlements( - _BaseOracleDatabaseRestTransport._BaseListEntitlements, OracleDatabaseRestStub + class _ListGoldengateDeploymentVersions( + _BaseOracleDatabaseRestTransport._BaseListGoldengateDeploymentVersions, + OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.ListEntitlements") + return hash("OracleDatabaseRestTransport.ListGoldengateDeploymentVersions") @staticmethod def _get_response( @@ -10068,41 +14988,47 @@ def _get_response( def __call__( self, - request: oracledatabase.ListEntitlementsRequest, + request: goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> oracledatabase.ListEntitlementsResponse: - r"""Call the list entitlements method over HTTP. + ) -> goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse: + r"""Call the list goldengate + deployment versions method over HTTP. - Args: - request (~.oracledatabase.ListEntitlementsRequest): - The request object. The request for ``Entitlement.List``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + Args: + request (~.goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest): + The request object. Message for listing + GoldengateDeploymentVersions. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse: + Message for response to listing + GoldengateDeploymentVersions - Returns: - ~.oracledatabase.ListEntitlementsResponse: - The response for ``Entitlement.List``. """ - http_options = _BaseOracleDatabaseRestTransport._BaseListEntitlements._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseListGoldengateDeploymentVersions._get_http_options() - request, metadata = self._interceptor.pre_list_entitlements( - request, metadata + request, metadata = ( + self._interceptor.pre_list_goldengate_deployment_versions( + request, metadata + ) ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseListEntitlements._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListGoldengateDeploymentVersions._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseListEntitlements._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListGoldengateDeploymentVersions._get_query_params_json( transcoded_request ) @@ -10124,17 +15050,17 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListEntitlements", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListGoldengateDeploymentVersions", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListEntitlements", + "rpcName": "ListGoldengateDeploymentVersions", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._ListEntitlements._get_response( + response = OracleDatabaseRestTransport._ListGoldengateDeploymentVersions._get_response( self._host, metadata, query_params, @@ -10149,21 +15075,27 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = oracledatabase.ListEntitlementsResponse() - pb_resp = oracledatabase.ListEntitlementsResponse.pb(resp) + resp = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse() + ) + pb_resp = goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse.pb( + resp + ) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_list_entitlements(resp) + resp = self._interceptor.post_list_goldengate_deployment_versions(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_list_entitlements_with_metadata( - resp, response_metadata + resp, _ = ( + self._interceptor.post_list_goldengate_deployment_versions_with_metadata( + resp, response_metadata + ) ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = oracledatabase.ListEntitlementsResponse.to_json( + response_payload = goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse.to_json( response ) except: @@ -10174,22 +15106,21 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_entitlements", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_goldengate_deployment_versions", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListEntitlements", + "rpcName": "ListGoldengateDeploymentVersions", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _ListExadbVmClusters( - _BaseOracleDatabaseRestTransport._BaseListExadbVmClusters, - OracleDatabaseRestStub, + class _ListMinorVersions( + _BaseOracleDatabaseRestTransport._BaseListMinorVersions, OracleDatabaseRestStub ): def __hash__(self): - return hash("OracleDatabaseRestTransport.ListExadbVmClusters") + return hash("OracleDatabaseRestTransport.ListMinorVersions") @staticmethod def _get_response( @@ -10215,17 +15146,17 @@ def _get_response( def __call__( self, - request: oracledatabase.ListExadbVmClustersRequest, + request: minor_version.ListMinorVersionsRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> oracledatabase.ListExadbVmClustersResponse: - r"""Call the list exadb vm clusters method over HTTP. + ) -> minor_version.ListMinorVersionsResponse: + r"""Call the list minor versions method over HTTP. Args: - request (~.oracledatabase.ListExadbVmClustersRequest): - The request object. The request for ``ExadbVmCluster.List``. + request (~.minor_version.ListMinorVersionsRequest): + The request object. The request for ``MinorVersion.List``. retry (google.api_core.retry.Retry): Designation of what errors, if any, should be retried. timeout (float): The timeout for this request. @@ -10235,21 +15166,21 @@ def __call__( be of type `bytes`. Returns: - ~.oracledatabase.ListExadbVmClustersResponse: - The response for ``ExadbVmCluster.List``. + ~.minor_version.ListMinorVersionsResponse: + The response for ``MinorVersion.List``. """ - http_options = _BaseOracleDatabaseRestTransport._BaseListExadbVmClusters._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseListMinorVersions._get_http_options() - request, metadata = self._interceptor.pre_list_exadb_vm_clusters( + request, metadata = self._interceptor.pre_list_minor_versions( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseListExadbVmClusters._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListMinorVersions._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseListExadbVmClusters._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListMinorVersions._get_query_params_json( transcoded_request ) @@ -10271,17 +15202,17 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListExadbVmClusters", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListMinorVersions", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListExadbVmClusters", + "rpcName": "ListMinorVersions", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._ListExadbVmClusters._get_response( + response = OracleDatabaseRestTransport._ListMinorVersions._get_response( self._host, metadata, query_params, @@ -10296,22 +15227,22 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = oracledatabase.ListExadbVmClustersResponse() - pb_resp = oracledatabase.ListExadbVmClustersResponse.pb(resp) + resp = minor_version.ListMinorVersionsResponse() + pb_resp = minor_version.ListMinorVersionsResponse.pb(resp) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_list_exadb_vm_clusters(resp) + resp = self._interceptor.post_list_minor_versions(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_list_exadb_vm_clusters_with_metadata( + resp, _ = self._interceptor.post_list_minor_versions_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = ( - oracledatabase.ListExadbVmClustersResponse.to_json(response) + response_payload = minor_version.ListMinorVersionsResponse.to_json( + response ) except: response_payload = None @@ -10321,22 +15252,21 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_exadb_vm_clusters", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_minor_versions", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListExadbVmClusters", + "rpcName": "ListMinorVersions", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _ListExascaleDbStorageVaults( - _BaseOracleDatabaseRestTransport._BaseListExascaleDbStorageVaults, - OracleDatabaseRestStub, + class _ListOdbNetworks( + _BaseOracleDatabaseRestTransport._BaseListOdbNetworks, OracleDatabaseRestStub ): def __hash__(self): - return hash("OracleDatabaseRestTransport.ListExascaleDbStorageVaults") + return hash("OracleDatabaseRestTransport.ListOdbNetworks") @staticmethod def _get_response( @@ -10362,42 +15292,41 @@ def _get_response( def __call__( self, - request: exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest, + request: odb_network.ListOdbNetworksRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse: - r"""Call the list exascale db storage - vaults method over HTTP. + ) -> odb_network.ListOdbNetworksResponse: + r"""Call the list odb networks method over HTTP. - Args: - request (~.exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest): - The request object. The request for ``ExascaleDbStorageVault.List``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + Args: + request (~.odb_network.ListOdbNetworksRequest): + The request object. The request for ``OdbNetwork.List``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. - Returns: - ~.exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse: - The response for ``ExascaleDbStorageVault.List``. + Returns: + ~.odb_network.ListOdbNetworksResponse: + The response for ``OdbNetwork.List``. """ - http_options = _BaseOracleDatabaseRestTransport._BaseListExascaleDbStorageVaults._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseListOdbNetworks._get_http_options() - request, metadata = self._interceptor.pre_list_exascale_db_storage_vaults( + request, metadata = self._interceptor.pre_list_odb_networks( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseListExascaleDbStorageVaults._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListOdbNetworks._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseListExascaleDbStorageVaults._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListOdbNetworks._get_query_params_json( transcoded_request ) @@ -10419,25 +15348,23 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListExascaleDbStorageVaults", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListOdbNetworks", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListExascaleDbStorageVaults", + "rpcName": "ListOdbNetworks", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = ( - OracleDatabaseRestTransport._ListExascaleDbStorageVaults._get_response( - self._host, - metadata, - query_params, - self._session, - timeout, - transcoded_request, - ) + response = OracleDatabaseRestTransport._ListOdbNetworks._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, ) # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception @@ -10446,25 +15373,21 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse() - pb_resp = exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse.pb( - resp - ) + resp = odb_network.ListOdbNetworksResponse() + pb_resp = odb_network.ListOdbNetworksResponse.pb(resp) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_list_exascale_db_storage_vaults(resp) + resp = self._interceptor.post_list_odb_networks(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = ( - self._interceptor.post_list_exascale_db_storage_vaults_with_metadata( - resp, response_metadata - ) + resp, _ = self._interceptor.post_list_odb_networks_with_metadata( + resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse.to_json( + response_payload = odb_network.ListOdbNetworksResponse.to_json( response ) except: @@ -10475,21 +15398,21 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_exascale_db_storage_vaults", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_odb_networks", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListExascaleDbStorageVaults", + "rpcName": "ListOdbNetworks", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _ListGiVersions( - _BaseOracleDatabaseRestTransport._BaseListGiVersions, OracleDatabaseRestStub + class _ListOdbSubnets( + _BaseOracleDatabaseRestTransport._BaseListOdbSubnets, OracleDatabaseRestStub ): def __hash__(self): - return hash("OracleDatabaseRestTransport.ListGiVersions") + return hash("OracleDatabaseRestTransport.ListOdbSubnets") @staticmethod def _get_response( @@ -10515,17 +15438,17 @@ def _get_response( def __call__( self, - request: oracledatabase.ListGiVersionsRequest, + request: odb_subnet.ListOdbSubnetsRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> oracledatabase.ListGiVersionsResponse: - r"""Call the list gi versions method over HTTP. + ) -> odb_subnet.ListOdbSubnetsResponse: + r"""Call the list odb subnets method over HTTP. Args: - request (~.oracledatabase.ListGiVersionsRequest): - The request object. The request for ``GiVersion.List``. + request (~.odb_subnet.ListOdbSubnetsRequest): + The request object. The request for ``OdbSubnet.List``. retry (google.api_core.retry.Retry): Designation of what errors, if any, should be retried. timeout (float): The timeout for this request. @@ -10535,23 +15458,23 @@ def __call__( be of type `bytes`. Returns: - ~.oracledatabase.ListGiVersionsResponse: - The response for ``GiVersion.List``. + ~.odb_subnet.ListOdbSubnetsResponse: + The response for ``OdbSubnet.List``. """ http_options = ( - _BaseOracleDatabaseRestTransport._BaseListGiVersions._get_http_options() + _BaseOracleDatabaseRestTransport._BaseListOdbSubnets._get_http_options() ) - request, metadata = self._interceptor.pre_list_gi_versions( + request, metadata = self._interceptor.pre_list_odb_subnets( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseListGiVersions._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListOdbSubnets._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseListGiVersions._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListOdbSubnets._get_query_params_json( transcoded_request ) @@ -10573,17 +15496,17 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListGiVersions", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListOdbSubnets", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListGiVersions", + "rpcName": "ListOdbSubnets", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._ListGiVersions._get_response( + response = OracleDatabaseRestTransport._ListOdbSubnets._get_response( self._host, metadata, query_params, @@ -10598,21 +15521,21 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = oracledatabase.ListGiVersionsResponse() - pb_resp = oracledatabase.ListGiVersionsResponse.pb(resp) + resp = odb_subnet.ListOdbSubnetsResponse() + pb_resp = odb_subnet.ListOdbSubnetsResponse.pb(resp) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_list_gi_versions(resp) + resp = self._interceptor.post_list_odb_subnets(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_list_gi_versions_with_metadata( + resp, _ = self._interceptor.post_list_odb_subnets_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = oracledatabase.ListGiVersionsResponse.to_json( + response_payload = odb_subnet.ListOdbSubnetsResponse.to_json( response ) except: @@ -10623,21 +15546,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_gi_versions", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_odb_subnets", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListGiVersions", + "rpcName": "ListOdbSubnets", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _ListMinorVersions( - _BaseOracleDatabaseRestTransport._BaseListMinorVersions, OracleDatabaseRestStub + class _ListPluggableDatabases( + _BaseOracleDatabaseRestTransport._BaseListPluggableDatabases, + OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.ListMinorVersions") + return hash("OracleDatabaseRestTransport.ListPluggableDatabases") @staticmethod def _get_response( @@ -10663,17 +15587,17 @@ def _get_response( def __call__( self, - request: minor_version.ListMinorVersionsRequest, + request: pluggable_database.ListPluggableDatabasesRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> minor_version.ListMinorVersionsResponse: - r"""Call the list minor versions method over HTTP. + ) -> pluggable_database.ListPluggableDatabasesResponse: + r"""Call the list pluggable databases method over HTTP. Args: - request (~.minor_version.ListMinorVersionsRequest): - The request object. The request for ``MinorVersion.List``. + request (~.pluggable_database.ListPluggableDatabasesRequest): + The request object. The request for ``PluggableDatabase.List``. retry (google.api_core.retry.Retry): Designation of what errors, if any, should be retried. timeout (float): The timeout for this request. @@ -10683,21 +15607,21 @@ def __call__( be of type `bytes`. Returns: - ~.minor_version.ListMinorVersionsResponse: - The response for ``MinorVersion.List``. + ~.pluggable_database.ListPluggableDatabasesResponse: + The response for ``PluggableDatabase.List``. """ - http_options = _BaseOracleDatabaseRestTransport._BaseListMinorVersions._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseListPluggableDatabases._get_http_options() - request, metadata = self._interceptor.pre_list_minor_versions( + request, metadata = self._interceptor.pre_list_pluggable_databases( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseListMinorVersions._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseListPluggableDatabases._get_transcoded_request( http_options, request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseListMinorVersions._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseListPluggableDatabases._get_query_params_json( transcoded_request ) @@ -10719,23 +15643,25 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListMinorVersions", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListPluggableDatabases", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListMinorVersions", + "rpcName": "ListPluggableDatabases", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._ListMinorVersions._get_response( - self._host, - metadata, - query_params, - self._session, - timeout, - transcoded_request, + response = ( + OracleDatabaseRestTransport._ListPluggableDatabases._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + ) ) # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception @@ -10744,22 +15670,24 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = minor_version.ListMinorVersionsResponse() - pb_resp = minor_version.ListMinorVersionsResponse.pb(resp) + resp = pluggable_database.ListPluggableDatabasesResponse() + pb_resp = pluggable_database.ListPluggableDatabasesResponse.pb(resp) json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) - resp = self._interceptor.post_list_minor_versions(resp) + resp = self._interceptor.post_list_pluggable_databases(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_list_minor_versions_with_metadata( + resp, _ = self._interceptor.post_list_pluggable_databases_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = minor_version.ListMinorVersionsResponse.to_json( - response + response_payload = ( + pluggable_database.ListPluggableDatabasesResponse.to_json( + response + ) ) except: response_payload = None @@ -10769,21 +15697,24 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_minor_versions", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_pluggable_databases", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListMinorVersions", + "rpcName": "ListPluggableDatabases", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _ListOdbNetworks( - _BaseOracleDatabaseRestTransport._BaseListOdbNetworks, OracleDatabaseRestStub + class _RemoveVirtualMachineExadbVmCluster( + _BaseOracleDatabaseRestTransport._BaseRemoveVirtualMachineExadbVmCluster, + OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.ListOdbNetworks") + return hash( + "OracleDatabaseRestTransport.RemoveVirtualMachineExadbVmCluster" + ) @staticmethod def _get_response( @@ -10804,46 +15735,57 @@ def _get_response( timeout=timeout, headers=headers, params=rest_helpers.flatten_query_params(query_params, strict=True), + data=body, ) return response def __call__( self, - request: odb_network.ListOdbNetworksRequest, + request: oracledatabase.RemoveVirtualMachineExadbVmClusterRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> odb_network.ListOdbNetworksResponse: - r"""Call the list odb networks method over HTTP. + ) -> operations_pb2.Operation: + r"""Call the remove virtual machine + exadb vm cluster method over HTTP. - Args: - request (~.odb_network.ListOdbNetworksRequest): - The request object. The request for ``OdbNetwork.List``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + Args: + request (~.oracledatabase.RemoveVirtualMachineExadbVmClusterRequest): + The request object. The request for ``ExadbVmCluster.RemoveVirtualMachine``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. - Returns: - ~.odb_network.ListOdbNetworksResponse: - The response for ``OdbNetwork.List``. """ - http_options = _BaseOracleDatabaseRestTransport._BaseListOdbNetworks._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseRemoveVirtualMachineExadbVmCluster._get_http_options() - request, metadata = self._interceptor.pre_list_odb_networks( - request, metadata + request, metadata = ( + self._interceptor.pre_remove_virtual_machine_exadb_vm_cluster( + request, metadata + ) ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseListOdbNetworks._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseRemoveVirtualMachineExadbVmCluster._get_transcoded_request( http_options, request ) + body = _BaseOracleDatabaseRestTransport._BaseRemoveVirtualMachineExadbVmCluster._get_request_body_json( + transcoded_request + ) + # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseListOdbNetworks._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseRemoveVirtualMachineExadbVmCluster._get_query_params_json( transcoded_request ) @@ -10865,23 +15807,24 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListOdbNetworks", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.RemoveVirtualMachineExadbVmCluster", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListOdbNetworks", + "rpcName": "RemoveVirtualMachineExadbVmCluster", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._ListOdbNetworks._get_response( + response = OracleDatabaseRestTransport._RemoveVirtualMachineExadbVmCluster._get_response( self._host, metadata, query_params, self._session, timeout, transcoded_request, + body, ) # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception @@ -10890,23 +15833,21 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = odb_network.ListOdbNetworksResponse() - pb_resp = odb_network.ListOdbNetworksResponse.pb(resp) - - json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) - resp = self._interceptor.post_list_odb_networks(resp) + resp = self._interceptor.post_remove_virtual_machine_exadb_vm_cluster(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_list_odb_networks_with_metadata( - resp, response_metadata + resp, _ = ( + self._interceptor.post_remove_virtual_machine_exadb_vm_cluster_with_metadata( + resp, response_metadata + ) ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = odb_network.ListOdbNetworksResponse.to_json( - response - ) + response_payload = json_format.MessageToJson(resp) except: response_payload = None http_response = { @@ -10915,21 +15856,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_odb_networks", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.remove_virtual_machine_exadb_vm_cluster", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListOdbNetworks", + "rpcName": "RemoveVirtualMachineExadbVmCluster", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _ListOdbSubnets( - _BaseOracleDatabaseRestTransport._BaseListOdbSubnets, OracleDatabaseRestStub + class _RestartAutonomousDatabase( + _BaseOracleDatabaseRestTransport._BaseRestartAutonomousDatabase, + OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.ListOdbSubnets") + return hash("OracleDatabaseRestTransport.RestartAutonomousDatabase") @staticmethod def _get_response( @@ -10950,48 +15892,55 @@ def _get_response( timeout=timeout, headers=headers, params=rest_helpers.flatten_query_params(query_params, strict=True), + data=body, ) return response def __call__( self, - request: odb_subnet.ListOdbSubnetsRequest, + request: oracledatabase.RestartAutonomousDatabaseRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> odb_subnet.ListOdbSubnetsResponse: - r"""Call the list odb subnets method over HTTP. + ) -> operations_pb2.Operation: + r"""Call the restart autonomous + database method over HTTP. - Args: - request (~.odb_subnet.ListOdbSubnetsRequest): - The request object. The request for ``OdbSubnet.List``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + Args: + request (~.oracledatabase.RestartAutonomousDatabaseRequest): + The request object. The request for ``AutonomousDatabase.Restart``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. - Returns: - ~.odb_subnet.ListOdbSubnetsResponse: - The response for ``OdbSubnet.List``. """ - http_options = ( - _BaseOracleDatabaseRestTransport._BaseListOdbSubnets._get_http_options() - ) + http_options = _BaseOracleDatabaseRestTransport._BaseRestartAutonomousDatabase._get_http_options() - request, metadata = self._interceptor.pre_list_odb_subnets( + request, metadata = self._interceptor.pre_restart_autonomous_database( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseListOdbSubnets._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseRestartAutonomousDatabase._get_transcoded_request( http_options, request ) + body = _BaseOracleDatabaseRestTransport._BaseRestartAutonomousDatabase._get_request_body_json( + transcoded_request + ) + # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseListOdbSubnets._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseRestartAutonomousDatabase._get_query_params_json( transcoded_request ) @@ -11013,23 +15962,26 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListOdbSubnets", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.RestartAutonomousDatabase", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListOdbSubnets", + "rpcName": "RestartAutonomousDatabase", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._ListOdbSubnets._get_response( - self._host, - metadata, - query_params, - self._session, - timeout, - transcoded_request, + response = ( + OracleDatabaseRestTransport._RestartAutonomousDatabase._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + body, + ) ) # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception @@ -11038,23 +15990,19 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = odb_subnet.ListOdbSubnetsResponse() - pb_resp = odb_subnet.ListOdbSubnetsResponse.pb(resp) - - json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) - resp = self._interceptor.post_list_odb_subnets(resp) + resp = self._interceptor.post_restart_autonomous_database(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_list_odb_subnets_with_metadata( + resp, _ = self._interceptor.post_restart_autonomous_database_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = odb_subnet.ListOdbSubnetsResponse.to_json( - response - ) + response_payload = json_format.MessageToJson(resp) except: response_payload = None http_response = { @@ -11063,22 +16011,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_odb_subnets", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.restart_autonomous_database", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListOdbSubnets", + "rpcName": "RestartAutonomousDatabase", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _ListPluggableDatabases( - _BaseOracleDatabaseRestTransport._BaseListPluggableDatabases, + class _RestoreAutonomousDatabase( + _BaseOracleDatabaseRestTransport._BaseRestoreAutonomousDatabase, OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.ListPluggableDatabases") + return hash("OracleDatabaseRestTransport.RestoreAutonomousDatabase") @staticmethod def _get_response( @@ -11099,46 +16047,55 @@ def _get_response( timeout=timeout, headers=headers, params=rest_helpers.flatten_query_params(query_params, strict=True), + data=body, ) return response def __call__( self, - request: pluggable_database.ListPluggableDatabasesRequest, + request: oracledatabase.RestoreAutonomousDatabaseRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> pluggable_database.ListPluggableDatabasesResponse: - r"""Call the list pluggable databases method over HTTP. + ) -> operations_pb2.Operation: + r"""Call the restore autonomous + database method over HTTP. - Args: - request (~.pluggable_database.ListPluggableDatabasesRequest): - The request object. The request for ``PluggableDatabase.List``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + Args: + request (~.oracledatabase.RestoreAutonomousDatabaseRequest): + The request object. The request for ``AutonomousDatabase.Restore``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. + + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. - Returns: - ~.pluggable_database.ListPluggableDatabasesResponse: - The response for ``PluggableDatabase.List``. """ - http_options = _BaseOracleDatabaseRestTransport._BaseListPluggableDatabases._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseRestoreAutonomousDatabase._get_http_options() - request, metadata = self._interceptor.pre_list_pluggable_databases( + request, metadata = self._interceptor.pre_restore_autonomous_database( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseListPluggableDatabases._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseRestoreAutonomousDatabase._get_transcoded_request( http_options, request ) + body = _BaseOracleDatabaseRestTransport._BaseRestoreAutonomousDatabase._get_request_body_json( + transcoded_request + ) + # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseListPluggableDatabases._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseRestoreAutonomousDatabase._get_query_params_json( transcoded_request ) @@ -11160,10 +16117,10 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.ListPluggableDatabases", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.RestoreAutonomousDatabase", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListPluggableDatabases", + "rpcName": "RestoreAutonomousDatabase", "httpRequest": http_request, "metadata": http_request["headers"], }, @@ -11171,13 +16128,14 @@ def __call__( # Send the request response = ( - OracleDatabaseRestTransport._ListPluggableDatabases._get_response( + OracleDatabaseRestTransport._RestoreAutonomousDatabase._get_response( self._host, metadata, query_params, self._session, timeout, transcoded_request, + body, ) ) @@ -11187,25 +16145,19 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = pluggable_database.ListPluggableDatabasesResponse() - pb_resp = pluggable_database.ListPluggableDatabasesResponse.pb(resp) - - json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) + resp = operations_pb2.Operation() + json_format.Parse(response.content, resp, ignore_unknown_fields=True) - resp = self._interceptor.post_list_pluggable_databases(resp) + resp = self._interceptor.post_restore_autonomous_database(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_list_pluggable_databases_with_metadata( + resp, _ = self._interceptor.post_restore_autonomous_database_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG ): # pragma: NO COVER try: - response_payload = ( - pluggable_database.ListPluggableDatabasesResponse.to_json( - response - ) - ) + response_payload = json_format.MessageToJson(resp) except: response_payload = None http_response = { @@ -11214,24 +16166,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.list_pluggable_databases", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.restore_autonomous_database", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "ListPluggableDatabases", + "rpcName": "RestoreAutonomousDatabase", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _RemoveVirtualMachineExadbVmCluster( - _BaseOracleDatabaseRestTransport._BaseRemoveVirtualMachineExadbVmCluster, + class _StartAutonomousDatabase( + _BaseOracleDatabaseRestTransport._BaseStartAutonomousDatabase, OracleDatabaseRestStub, ): def __hash__(self): - return hash( - "OracleDatabaseRestTransport.RemoveVirtualMachineExadbVmCluster" - ) + return hash("OracleDatabaseRestTransport.StartAutonomousDatabase") @staticmethod def _get_response( @@ -11258,51 +16208,48 @@ def _get_response( def __call__( self, - request: oracledatabase.RemoveVirtualMachineExadbVmClusterRequest, + request: oracledatabase.StartAutonomousDatabaseRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), ) -> operations_pb2.Operation: - r"""Call the remove virtual machine - exadb vm cluster method over HTTP. + r"""Call the start autonomous database method over HTTP. - Args: - request (~.oracledatabase.RemoveVirtualMachineExadbVmClusterRequest): - The request object. The request for ``ExadbVmCluster.RemoveVirtualMachine``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + Args: + request (~.oracledatabase.StartAutonomousDatabaseRequest): + The request object. The request for ``AutonomousDatabase.Start``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. - Returns: - ~.operations_pb2.Operation: - This resource represents a - long-running operation that is the - result of a network API call. + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. """ - http_options = _BaseOracleDatabaseRestTransport._BaseRemoveVirtualMachineExadbVmCluster._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseStartAutonomousDatabase._get_http_options() - request, metadata = ( - self._interceptor.pre_remove_virtual_machine_exadb_vm_cluster( - request, metadata - ) + request, metadata = self._interceptor.pre_start_autonomous_database( + request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseRemoveVirtualMachineExadbVmCluster._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseStartAutonomousDatabase._get_transcoded_request( http_options, request ) - body = _BaseOracleDatabaseRestTransport._BaseRemoveVirtualMachineExadbVmCluster._get_request_body_json( + body = _BaseOracleDatabaseRestTransport._BaseStartAutonomousDatabase._get_request_body_json( transcoded_request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseRemoveVirtualMachineExadbVmCluster._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseStartAutonomousDatabase._get_query_params_json( transcoded_request ) @@ -11324,24 +16271,26 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.RemoveVirtualMachineExadbVmCluster", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.StartAutonomousDatabase", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "RemoveVirtualMachineExadbVmCluster", + "rpcName": "StartAutonomousDatabase", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = OracleDatabaseRestTransport._RemoveVirtualMachineExadbVmCluster._get_response( - self._host, - metadata, - query_params, - self._session, - timeout, - transcoded_request, - body, + response = ( + OracleDatabaseRestTransport._StartAutonomousDatabase._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + body, + ) ) # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception @@ -11353,12 +16302,10 @@ def __call__( resp = operations_pb2.Operation() json_format.Parse(response.content, resp, ignore_unknown_fields=True) - resp = self._interceptor.post_remove_virtual_machine_exadb_vm_cluster(resp) + resp = self._interceptor.post_start_autonomous_database(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = ( - self._interceptor.post_remove_virtual_machine_exadb_vm_cluster_with_metadata( - resp, response_metadata - ) + resp, _ = self._interceptor.post_start_autonomous_database_with_metadata( + resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG @@ -11373,22 +16320,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.remove_virtual_machine_exadb_vm_cluster", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.start_autonomous_database", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "RemoveVirtualMachineExadbVmCluster", + "rpcName": "StartAutonomousDatabase", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _RestartAutonomousDatabase( - _BaseOracleDatabaseRestTransport._BaseRestartAutonomousDatabase, + class _StartGoldengateDeployment( + _BaseOracleDatabaseRestTransport._BaseStartGoldengateDeployment, OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.RestartAutonomousDatabase") + return hash("OracleDatabaseRestTransport.StartGoldengateDeployment") @staticmethod def _get_response( @@ -11415,18 +16362,18 @@ def _get_response( def __call__( self, - request: oracledatabase.RestartAutonomousDatabaseRequest, + request: goldengate_deployment.StartGoldengateDeploymentRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), ) -> operations_pb2.Operation: - r"""Call the restart autonomous - database method over HTTP. + r"""Call the start goldengate + deployment method over HTTP. Args: - request (~.oracledatabase.RestartAutonomousDatabaseRequest): - The request object. The request for ``AutonomousDatabase.Restart``. + request (~.goldengate_deployment.StartGoldengateDeploymentRequest): + The request object. The request for ``GoldengateDeployment.Start``. retry (google.api_core.retry.Retry): Designation of what errors, if any, should be retried. timeout (float): The timeout for this request. @@ -11443,21 +16390,21 @@ def __call__( """ - http_options = _BaseOracleDatabaseRestTransport._BaseRestartAutonomousDatabase._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseStartGoldengateDeployment._get_http_options() - request, metadata = self._interceptor.pre_restart_autonomous_database( + request, metadata = self._interceptor.pre_start_goldengate_deployment( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseRestartAutonomousDatabase._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseStartGoldengateDeployment._get_transcoded_request( http_options, request ) - body = _BaseOracleDatabaseRestTransport._BaseRestartAutonomousDatabase._get_request_body_json( + body = _BaseOracleDatabaseRestTransport._BaseStartGoldengateDeployment._get_request_body_json( transcoded_request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseRestartAutonomousDatabase._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseStartGoldengateDeployment._get_query_params_json( transcoded_request ) @@ -11479,10 +16426,10 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.RestartAutonomousDatabase", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.StartGoldengateDeployment", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "RestartAutonomousDatabase", + "rpcName": "StartGoldengateDeployment", "httpRequest": http_request, "metadata": http_request["headers"], }, @@ -11490,7 +16437,7 @@ def __call__( # Send the request response = ( - OracleDatabaseRestTransport._RestartAutonomousDatabase._get_response( + OracleDatabaseRestTransport._StartGoldengateDeployment._get_response( self._host, metadata, query_params, @@ -11510,9 +16457,9 @@ def __call__( resp = operations_pb2.Operation() json_format.Parse(response.content, resp, ignore_unknown_fields=True) - resp = self._interceptor.post_restart_autonomous_database(resp) + resp = self._interceptor.post_start_goldengate_deployment(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_restart_autonomous_database_with_metadata( + resp, _ = self._interceptor.post_start_goldengate_deployment_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( @@ -11528,22 +16475,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.restart_autonomous_database", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.start_goldengate_deployment", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "RestartAutonomousDatabase", + "rpcName": "StartGoldengateDeployment", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _RestoreAutonomousDatabase( - _BaseOracleDatabaseRestTransport._BaseRestoreAutonomousDatabase, + class _StopAutonomousDatabase( + _BaseOracleDatabaseRestTransport._BaseStopAutonomousDatabase, OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.RestoreAutonomousDatabase") + return hash("OracleDatabaseRestTransport.StopAutonomousDatabase") @staticmethod def _get_response( @@ -11570,49 +16517,48 @@ def _get_response( def __call__( self, - request: oracledatabase.RestoreAutonomousDatabaseRequest, + request: oracledatabase.StopAutonomousDatabaseRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), ) -> operations_pb2.Operation: - r"""Call the restore autonomous - database method over HTTP. + r"""Call the stop autonomous database method over HTTP. - Args: - request (~.oracledatabase.RestoreAutonomousDatabaseRequest): - The request object. The request for ``AutonomousDatabase.Restore``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + Args: + request (~.oracledatabase.StopAutonomousDatabaseRequest): + The request object. The request for ``AutonomousDatabase.Stop``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. - Returns: - ~.operations_pb2.Operation: - This resource represents a - long-running operation that is the - result of a network API call. + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. """ - http_options = _BaseOracleDatabaseRestTransport._BaseRestoreAutonomousDatabase._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseStopAutonomousDatabase._get_http_options() - request, metadata = self._interceptor.pre_restore_autonomous_database( + request, metadata = self._interceptor.pre_stop_autonomous_database( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseRestoreAutonomousDatabase._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseStopAutonomousDatabase._get_transcoded_request( http_options, request ) - body = _BaseOracleDatabaseRestTransport._BaseRestoreAutonomousDatabase._get_request_body_json( + body = _BaseOracleDatabaseRestTransport._BaseStopAutonomousDatabase._get_request_body_json( transcoded_request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseRestoreAutonomousDatabase._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseStopAutonomousDatabase._get_query_params_json( transcoded_request ) @@ -11634,10 +16580,10 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.RestoreAutonomousDatabase", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.StopAutonomousDatabase", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "RestoreAutonomousDatabase", + "rpcName": "StopAutonomousDatabase", "httpRequest": http_request, "metadata": http_request["headers"], }, @@ -11645,7 +16591,7 @@ def __call__( # Send the request response = ( - OracleDatabaseRestTransport._RestoreAutonomousDatabase._get_response( + OracleDatabaseRestTransport._StopAutonomousDatabase._get_response( self._host, metadata, query_params, @@ -11665,9 +16611,9 @@ def __call__( resp = operations_pb2.Operation() json_format.Parse(response.content, resp, ignore_unknown_fields=True) - resp = self._interceptor.post_restore_autonomous_database(resp) + resp = self._interceptor.post_stop_autonomous_database(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_restore_autonomous_database_with_metadata( + resp, _ = self._interceptor.post_stop_autonomous_database_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( @@ -11683,22 +16629,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.restore_autonomous_database", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.stop_autonomous_database", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "RestoreAutonomousDatabase", + "rpcName": "StopAutonomousDatabase", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _StartAutonomousDatabase( - _BaseOracleDatabaseRestTransport._BaseStartAutonomousDatabase, + class _StopGoldengateDeployment( + _BaseOracleDatabaseRestTransport._BaseStopGoldengateDeployment, OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.StartAutonomousDatabase") + return hash("OracleDatabaseRestTransport.StopGoldengateDeployment") @staticmethod def _get_response( @@ -11725,48 +16671,49 @@ def _get_response( def __call__( self, - request: oracledatabase.StartAutonomousDatabaseRequest, + request: goldengate_deployment.StopGoldengateDeploymentRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), ) -> operations_pb2.Operation: - r"""Call the start autonomous database method over HTTP. + r"""Call the stop goldengate + deployment method over HTTP. - Args: - request (~.oracledatabase.StartAutonomousDatabaseRequest): - The request object. The request for ``AutonomousDatabase.Start``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + Args: + request (~.goldengate_deployment.StopGoldengateDeploymentRequest): + The request object. The request for ``GoldengateDeployment.Stop``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. - Returns: - ~.operations_pb2.Operation: - This resource represents a - long-running operation that is the - result of a network API call. + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. """ - http_options = _BaseOracleDatabaseRestTransport._BaseStartAutonomousDatabase._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseStopGoldengateDeployment._get_http_options() - request, metadata = self._interceptor.pre_start_autonomous_database( + request, metadata = self._interceptor.pre_stop_goldengate_deployment( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseStartAutonomousDatabase._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseStopGoldengateDeployment._get_transcoded_request( http_options, request ) - body = _BaseOracleDatabaseRestTransport._BaseStartAutonomousDatabase._get_request_body_json( + body = _BaseOracleDatabaseRestTransport._BaseStopGoldengateDeployment._get_request_body_json( transcoded_request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseStartAutonomousDatabase._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseStopGoldengateDeployment._get_query_params_json( transcoded_request ) @@ -11788,10 +16735,10 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.StartAutonomousDatabase", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.StopGoldengateDeployment", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "StartAutonomousDatabase", + "rpcName": "StopGoldengateDeployment", "httpRequest": http_request, "metadata": http_request["headers"], }, @@ -11799,7 +16746,7 @@ def __call__( # Send the request response = ( - OracleDatabaseRestTransport._StartAutonomousDatabase._get_response( + OracleDatabaseRestTransport._StopGoldengateDeployment._get_response( self._host, metadata, query_params, @@ -11819,9 +16766,9 @@ def __call__( resp = operations_pb2.Operation() json_format.Parse(response.content, resp, ignore_unknown_fields=True) - resp = self._interceptor.post_start_autonomous_database(resp) + resp = self._interceptor.post_stop_goldengate_deployment(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_start_autonomous_database_with_metadata( + resp, _ = self._interceptor.post_stop_goldengate_deployment_with_metadata( resp, response_metadata ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( @@ -11837,22 +16784,22 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.start_autonomous_database", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.stop_goldengate_deployment", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "StartAutonomousDatabase", + "rpcName": "StopGoldengateDeployment", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _StopAutonomousDatabase( - _BaseOracleDatabaseRestTransport._BaseStopAutonomousDatabase, + class _SwitchoverAutonomousDatabase( + _BaseOracleDatabaseRestTransport._BaseSwitchoverAutonomousDatabase, OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.StopAutonomousDatabase") + return hash("OracleDatabaseRestTransport.SwitchoverAutonomousDatabase") @staticmethod def _get_response( @@ -11879,48 +16826,50 @@ def _get_response( def __call__( self, - request: oracledatabase.StopAutonomousDatabaseRequest, + request: oracledatabase.SwitchoverAutonomousDatabaseRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), ) -> operations_pb2.Operation: - r"""Call the stop autonomous database method over HTTP. + r"""Call the switchover autonomous + database method over HTTP. - Args: - request (~.oracledatabase.StopAutonomousDatabaseRequest): - The request object. The request for ``AutonomousDatabase.Stop``. - retry (google.api_core.retry.Retry): Designation of what errors, if any, - should be retried. - timeout (float): The timeout for this request. - metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be - sent along with the request as metadata. Normally, each value must be of type `str`, - but for metadata keys ending with the suffix `-bin`, the corresponding values must - be of type `bytes`. + Args: + request (~.oracledatabase.SwitchoverAutonomousDatabaseRequest): + The request object. The request for + ``OracleDatabase.SwitchoverAutonomousDatabase``. + retry (google.api_core.retry.Retry): Designation of what errors, if any, + should be retried. + timeout (float): The timeout for this request. + metadata (Sequence[Tuple[str, Union[str, bytes]]]): Key/value pairs which should be + sent along with the request as metadata. Normally, each value must be of type `str`, + but for metadata keys ending with the suffix `-bin`, the corresponding values must + be of type `bytes`. - Returns: - ~.operations_pb2.Operation: - This resource represents a - long-running operation that is the - result of a network API call. + Returns: + ~.operations_pb2.Operation: + This resource represents a + long-running operation that is the + result of a network API call. """ - http_options = _BaseOracleDatabaseRestTransport._BaseStopAutonomousDatabase._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseSwitchoverAutonomousDatabase._get_http_options() - request, metadata = self._interceptor.pre_stop_autonomous_database( + request, metadata = self._interceptor.pre_switchover_autonomous_database( request, metadata ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseStopAutonomousDatabase._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseSwitchoverAutonomousDatabase._get_transcoded_request( http_options, request ) - body = _BaseOracleDatabaseRestTransport._BaseStopAutonomousDatabase._get_request_body_json( + body = _BaseOracleDatabaseRestTransport._BaseSwitchoverAutonomousDatabase._get_request_body_json( transcoded_request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseStopAutonomousDatabase._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseSwitchoverAutonomousDatabase._get_query_params_json( transcoded_request ) @@ -11942,10 +16891,10 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.StopAutonomousDatabase", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.SwitchoverAutonomousDatabase", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "StopAutonomousDatabase", + "rpcName": "SwitchoverAutonomousDatabase", "httpRequest": http_request, "metadata": http_request["headers"], }, @@ -11953,7 +16902,7 @@ def __call__( # Send the request response = ( - OracleDatabaseRestTransport._StopAutonomousDatabase._get_response( + OracleDatabaseRestTransport._SwitchoverAutonomousDatabase._get_response( self._host, metadata, query_params, @@ -11973,10 +16922,12 @@ def __call__( resp = operations_pb2.Operation() json_format.Parse(response.content, resp, ignore_unknown_fields=True) - resp = self._interceptor.post_stop_autonomous_database(resp) + resp = self._interceptor.post_switchover_autonomous_database(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] - resp, _ = self._interceptor.post_stop_autonomous_database_with_metadata( - resp, response_metadata + resp, _ = ( + self._interceptor.post_switchover_autonomous_database_with_metadata( + resp, response_metadata + ) ) if CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor( logging.DEBUG @@ -11991,22 +16942,24 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.stop_autonomous_database", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.switchover_autonomous_database", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "StopAutonomousDatabase", + "rpcName": "SwitchoverAutonomousDatabase", "metadata": http_response["headers"], "httpResponse": http_response, }, ) return resp - class _SwitchoverAutonomousDatabase( - _BaseOracleDatabaseRestTransport._BaseSwitchoverAutonomousDatabase, + class _TestGoldengateConnectionAssignment( + _BaseOracleDatabaseRestTransport._BaseTestGoldengateConnectionAssignment, OracleDatabaseRestStub, ): def __hash__(self): - return hash("OracleDatabaseRestTransport.SwitchoverAutonomousDatabase") + return hash( + "OracleDatabaseRestTransport.TestGoldengateConnectionAssignment" + ) @staticmethod def _get_response( @@ -12033,19 +16986,21 @@ def _get_response( def __call__( self, - request: oracledatabase.SwitchoverAutonomousDatabaseRequest, + request: goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest, *, retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, Union[str, bytes]]] = (), - ) -> operations_pb2.Operation: - r"""Call the switchover autonomous - database method over HTTP. + ) -> ( + goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse + ): + r"""Call the test goldengate + connection assignment method over HTTP. Args: - request (~.oracledatabase.SwitchoverAutonomousDatabaseRequest): - The request object. The request for - ``OracleDatabase.SwitchoverAutonomousDatabase``. + request (~.goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest): + The request object. Request message for + TestGoldengateConnectionAssignment. retry (google.api_core.retry.Retry): Designation of what errors, if any, should be retried. timeout (float): The timeout for this request. @@ -12055,28 +17010,31 @@ def __call__( be of type `bytes`. Returns: - ~.operations_pb2.Operation: - This resource represents a - long-running operation that is the - result of a network API call. + ~.goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse: + The result of the connectivity test + performed between the Goldengate + deployment and the associated database / + service. """ - http_options = _BaseOracleDatabaseRestTransport._BaseSwitchoverAutonomousDatabase._get_http_options() + http_options = _BaseOracleDatabaseRestTransport._BaseTestGoldengateConnectionAssignment._get_http_options() - request, metadata = self._interceptor.pre_switchover_autonomous_database( - request, metadata + request, metadata = ( + self._interceptor.pre_test_goldengate_connection_assignment( + request, metadata + ) ) - transcoded_request = _BaseOracleDatabaseRestTransport._BaseSwitchoverAutonomousDatabase._get_transcoded_request( + transcoded_request = _BaseOracleDatabaseRestTransport._BaseTestGoldengateConnectionAssignment._get_transcoded_request( http_options, request ) - body = _BaseOracleDatabaseRestTransport._BaseSwitchoverAutonomousDatabase._get_request_body_json( + body = _BaseOracleDatabaseRestTransport._BaseTestGoldengateConnectionAssignment._get_request_body_json( transcoded_request ) # Jsonify the query params - query_params = _BaseOracleDatabaseRestTransport._BaseSwitchoverAutonomousDatabase._get_query_params_json( + query_params = _BaseOracleDatabaseRestTransport._BaseTestGoldengateConnectionAssignment._get_query_params_json( transcoded_request ) @@ -12098,26 +17056,24 @@ def __call__( "headers": dict(metadata), } _LOGGER.debug( - f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.SwitchoverAutonomousDatabase", + f"Sending request for google.cloud.oracledatabase_v1.OracleDatabaseClient.TestGoldengateConnectionAssignment", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "SwitchoverAutonomousDatabase", + "rpcName": "TestGoldengateConnectionAssignment", "httpRequest": http_request, "metadata": http_request["headers"], }, ) # Send the request - response = ( - OracleDatabaseRestTransport._SwitchoverAutonomousDatabase._get_response( - self._host, - metadata, - query_params, - self._session, - timeout, - transcoded_request, - body, - ) + response = OracleDatabaseRestTransport._TestGoldengateConnectionAssignment._get_response( + self._host, + metadata, + query_params, + self._session, + timeout, + transcoded_request, + body, ) # In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception @@ -12126,13 +17082,17 @@ def __call__( raise core_exceptions.from_http_response(response) # Return the response - resp = operations_pb2.Operation() - json_format.Parse(response.content, resp, ignore_unknown_fields=True) + resp = goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse() + pb_resp = goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse.pb( + resp + ) - resp = self._interceptor.post_switchover_autonomous_database(resp) + json_format.Parse(response.content, pb_resp, ignore_unknown_fields=True) + + resp = self._interceptor.post_test_goldengate_connection_assignment(resp) response_metadata = [(k, str(v)) for k, v in response.headers.items()] resp, _ = ( - self._interceptor.post_switchover_autonomous_database_with_metadata( + self._interceptor.post_test_goldengate_connection_assignment_with_metadata( resp, response_metadata ) ) @@ -12140,7 +17100,9 @@ def __call__( logging.DEBUG ): # pragma: NO COVER try: - response_payload = json_format.MessageToJson(resp) + response_payload = goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse.to_json( + response + ) except: response_payload = None http_response = { @@ -12149,10 +17111,10 @@ def __call__( "status": response.status_code, } _LOGGER.debug( - "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.switchover_autonomous_database", + "Received response for google.cloud.oracledatabase_v1.OracleDatabaseClient.test_goldengate_connection_assignment", extra={ "serviceName": "google.cloud.oracledatabase.v1.OracleDatabase", - "rpcName": "SwitchoverAutonomousDatabase", + "rpcName": "TestGoldengateConnectionAssignment", "metadata": http_response["headers"], "httpResponse": http_response, }, @@ -12535,6 +17497,47 @@ def create_exascale_db_storage_vault( self._session, self._host, self._interceptor ) # type: ignore + @property + def create_goldengate_connection( + self, + ) -> Callable[ + [gco_goldengate_connection.CreateGoldengateConnectionRequest], + operations_pb2.Operation, + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._CreateGoldengateConnection( + self._session, self._host, self._interceptor + ) # type: ignore + + @property + def create_goldengate_connection_assignment( + self, + ) -> Callable[ + [ + gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest + ], + operations_pb2.Operation, + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._CreateGoldengateConnectionAssignment( + self._session, self._host, self._interceptor + ) # type: ignore + + @property + def create_goldengate_deployment( + self, + ) -> Callable[ + [gco_goldengate_deployment.CreateGoldengateDeploymentRequest], + operations_pb2.Operation, + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._CreateGoldengateDeployment( + self._session, self._host, self._interceptor + ) # type: ignore + @property def create_odb_network( self, @@ -12617,6 +17620,45 @@ def delete_exascale_db_storage_vault( self._session, self._host, self._interceptor ) # type: ignore + @property + def delete_goldengate_connection( + self, + ) -> Callable[ + [goldengate_connection.DeleteGoldengateConnectionRequest], + operations_pb2.Operation, + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._DeleteGoldengateConnection( + self._session, self._host, self._interceptor + ) # type: ignore + + @property + def delete_goldengate_connection_assignment( + self, + ) -> Callable[ + [goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest], + operations_pb2.Operation, + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._DeleteGoldengateConnectionAssignment( + self._session, self._host, self._interceptor + ) # type: ignore + + @property + def delete_goldengate_deployment( + self, + ) -> Callable[ + [goldengate_deployment.DeleteGoldengateDeploymentRequest], + operations_pb2.Operation, + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._DeleteGoldengateDeployment( + self._session, self._host, self._interceptor + ) # type: ignore + @property def delete_odb_network( self, @@ -12729,6 +17771,97 @@ def get_exascale_db_storage_vault( self._session, self._host, self._interceptor ) # type: ignore + @property + def get_goldengate_connection( + self, + ) -> Callable[ + [goldengate_connection.GetGoldengateConnectionRequest], + goldengate_connection.GoldengateConnection, + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._GetGoldengateConnection( + self._session, self._host, self._interceptor + ) # type: ignore + + @property + def get_goldengate_connection_assignment( + self, + ) -> Callable[ + [goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest], + goldengate_connection_assignment.GoldengateConnectionAssignment, + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._GetGoldengateConnectionAssignment( + self._session, self._host, self._interceptor + ) # type: ignore + + @property + def get_goldengate_connection_type( + self, + ) -> Callable[ + [goldengate_connection_type.GetGoldengateConnectionTypeRequest], + goldengate_connection_type.GoldengateConnectionType, + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._GetGoldengateConnectionType( + self._session, self._host, self._interceptor + ) # type: ignore + + @property + def get_goldengate_deployment( + self, + ) -> Callable[ + [goldengate_deployment.GetGoldengateDeploymentRequest], + goldengate_deployment.GoldengateDeployment, + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._GetGoldengateDeployment( + self._session, self._host, self._interceptor + ) # type: ignore + + @property + def get_goldengate_deployment_environment( + self, + ) -> Callable[ + [goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest], + goldengate_deployment_environment.GoldengateDeploymentEnvironment, + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._GetGoldengateDeploymentEnvironment( + self._session, self._host, self._interceptor + ) # type: ignore + + @property + def get_goldengate_deployment_type( + self, + ) -> Callable[ + [goldengate_deployment_type.GetGoldengateDeploymentTypeRequest], + goldengate_deployment_type.GoldengateDeploymentType, + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._GetGoldengateDeploymentType( + self._session, self._host, self._interceptor + ) # type: ignore + + @property + def get_goldengate_deployment_version( + self, + ) -> Callable[ + [goldengate_deployment_version.GetGoldengateDeploymentVersionRequest], + goldengate_deployment_version.GoldengateDeploymentVersion, + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._GetGoldengateDeploymentVersion( + self._session, self._host, self._interceptor + ) # type: ignore + @property def get_odb_network( self, @@ -12960,6 +18093,97 @@ def list_gi_versions( # In C++ this would require a dynamic_cast return self._ListGiVersions(self._session, self._host, self._interceptor) # type: ignore + @property + def list_goldengate_connection_assignments( + self, + ) -> Callable[ + [goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest], + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse, + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._ListGoldengateConnectionAssignments( + self._session, self._host, self._interceptor + ) # type: ignore + + @property + def list_goldengate_connections( + self, + ) -> Callable[ + [goldengate_connection.ListGoldengateConnectionsRequest], + goldengate_connection.ListGoldengateConnectionsResponse, + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._ListGoldengateConnections( + self._session, self._host, self._interceptor + ) # type: ignore + + @property + def list_goldengate_connection_types( + self, + ) -> Callable[ + [goldengate_connection_type.ListGoldengateConnectionTypesRequest], + goldengate_connection_type.ListGoldengateConnectionTypesResponse, + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._ListGoldengateConnectionTypes( + self._session, self._host, self._interceptor + ) # type: ignore + + @property + def list_goldengate_deployment_environments( + self, + ) -> Callable[ + [goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest], + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse, + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._ListGoldengateDeploymentEnvironments( + self._session, self._host, self._interceptor + ) # type: ignore + + @property + def list_goldengate_deployments( + self, + ) -> Callable[ + [goldengate_deployment.ListGoldengateDeploymentsRequest], + goldengate_deployment.ListGoldengateDeploymentsResponse, + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._ListGoldengateDeployments( + self._session, self._host, self._interceptor + ) # type: ignore + + @property + def list_goldengate_deployment_types( + self, + ) -> Callable[ + [goldengate_deployment_type.ListGoldengateDeploymentTypesRequest], + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse, + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._ListGoldengateDeploymentTypes( + self._session, self._host, self._interceptor + ) # type: ignore + + @property + def list_goldengate_deployment_versions( + self, + ) -> Callable[ + [goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest], + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse, + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._ListGoldengateDeploymentVersions( + self._session, self._host, self._interceptor + ) # type: ignore + @property def list_minor_versions( self, @@ -13053,6 +18277,19 @@ def start_autonomous_database( self._session, self._host, self._interceptor ) # type: ignore + @property + def start_goldengate_deployment( + self, + ) -> Callable[ + [goldengate_deployment.StartGoldengateDeploymentRequest], + operations_pb2.Operation, + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._StartGoldengateDeployment( + self._session, self._host, self._interceptor + ) # type: ignore + @property def stop_autonomous_database( self, @@ -13065,6 +18302,19 @@ def stop_autonomous_database( self._session, self._host, self._interceptor ) # type: ignore + @property + def stop_goldengate_deployment( + self, + ) -> Callable[ + [goldengate_deployment.StopGoldengateDeploymentRequest], + operations_pb2.Operation, + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._StopGoldengateDeployment( + self._session, self._host, self._interceptor + ) # type: ignore + @property def switchover_autonomous_database( self, @@ -13077,6 +18327,19 @@ def switchover_autonomous_database( self._session, self._host, self._interceptor ) # type: ignore + @property + def test_goldengate_connection_assignment( + self, + ) -> Callable[ + [goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest], + goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse, + ]: + # The return type is fine, but mypy isn't sophisticated enough to determine what's going on here. + # In C++ this would require a dynamic_cast + return self._TestGoldengateConnectionAssignment( + self._session, self._host, self._interceptor + ) # type: ignore + @property def update_autonomous_database( self, diff --git a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/transports/rest_base.py b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/transports/rest_base.py index 8d7cc5100ca7..d7418c921f71 100644 --- a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/transports/rest_base.py +++ b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/services/oracle_database/transports/rest_base.py @@ -32,6 +32,13 @@ exadata_infra, exadb_vm_cluster, exascale_db_storage_vault, + goldengate_connection, + goldengate_connection_assignment, + goldengate_connection_type, + goldengate_deployment, + goldengate_deployment_environment, + goldengate_deployment_type, + goldengate_deployment_version, minor_version, odb_network, odb_subnet, @@ -43,6 +50,15 @@ from google.cloud.oracledatabase_v1.types import ( exascale_db_storage_vault as gco_exascale_db_storage_vault, ) +from google.cloud.oracledatabase_v1.types import ( + goldengate_connection as gco_goldengate_connection, +) +from google.cloud.oracledatabase_v1.types import ( + goldengate_connection_assignment as gco_goldengate_connection_assignment, +) +from google.cloud.oracledatabase_v1.types import ( + goldengate_deployment as gco_goldengate_deployment, +) from google.cloud.oracledatabase_v1.types import odb_network as gco_odb_network from google.cloud.oracledatabase_v1.types import odb_subnet as gco_odb_subnet @@ -471,12 +487,12 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseCreateOdbNetwork: + class _BaseCreateGoldengateConnection: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = { - "odbNetworkId": "", + "goldengateConnectionId": "", } @classmethod @@ -492,15 +508,17 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "post", - "uri": "/v1/{parent=projects/*/locations/*}/odbNetworks", - "body": "odb_network", + "uri": "/v1/{parent=projects/*/locations/*}/goldengateConnections", + "body": "goldengate_connection", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = gco_odb_network.CreateOdbNetworkRequest.pb(request) + pb_request = gco_goldengate_connection.CreateGoldengateConnectionRequest.pb( + request + ) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -522,7 +540,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseCreateOdbNetwork._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseCreateGoldengateConnection._get_unset_required_fields( query_params ) ) @@ -530,12 +548,12 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseCreateOdbSubnet: + class _BaseCreateGoldengateConnectionAssignment: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = { - "odbSubnetId": "", + "goldengateConnectionAssignmentId": "", } @classmethod @@ -551,15 +569,17 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "post", - "uri": "/v1/{parent=projects/*/locations/*/odbNetworks/*}/odbSubnets", - "body": "odb_subnet", + "uri": "/v1/{parent=projects/*/locations/*}/goldengateConnectionAssignments", + "body": "goldengate_connection_assignment", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = gco_odb_subnet.CreateOdbSubnetRequest.pb(request) + pb_request = gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest.pb( + request + ) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -581,7 +601,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseCreateOdbSubnet._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseCreateGoldengateConnectionAssignment._get_unset_required_fields( query_params ) ) @@ -589,11 +609,13 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseDeleteAutonomousDatabase: + class _BaseCreateGoldengateDeployment: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") - __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = { + "goldengateDeploymentId": "", + } @classmethod def _get_unset_required_fields(cls, message_dict): @@ -607,18 +629,30 @@ def _get_unset_required_fields(cls, message_dict): def _get_http_options(): http_options: List[Dict[str, str]] = [ { - "method": "delete", - "uri": "/v1/{name=projects/*/locations/*/autonomousDatabases/*}", + "method": "post", + "uri": "/v1/{parent=projects/*/locations/*}/goldengateDeployments", + "body": "goldengate_deployment", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.DeleteAutonomousDatabaseRequest.pb(request) + pb_request = gco_goldengate_deployment.CreateGoldengateDeploymentRequest.pb( + request + ) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request + @staticmethod + def _get_request_body_json(transcoded_request): + # Jsonify the request body + + body = json_format.MessageToJson( + transcoded_request["body"], use_integers_for_enums=True + ) + return body + @staticmethod def _get_query_params_json(transcoded_request): query_params = json.loads( @@ -628,7 +662,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseDeleteAutonomousDatabase._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseCreateGoldengateDeployment._get_unset_required_fields( query_params ) ) @@ -636,11 +670,13 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseDeleteCloudExadataInfrastructure: + class _BaseCreateOdbNetwork: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") - __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = { + "odbNetworkId": "", + } @classmethod def _get_unset_required_fields(cls, message_dict): @@ -654,20 +690,28 @@ def _get_unset_required_fields(cls, message_dict): def _get_http_options(): http_options: List[Dict[str, str]] = [ { - "method": "delete", - "uri": "/v1/{name=projects/*/locations/*/cloudExadataInfrastructures/*}", + "method": "post", + "uri": "/v1/{parent=projects/*/locations/*}/odbNetworks", + "body": "odb_network", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.DeleteCloudExadataInfrastructureRequest.pb( - request - ) + pb_request = gco_odb_network.CreateOdbNetworkRequest.pb(request) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request + @staticmethod + def _get_request_body_json(transcoded_request): + # Jsonify the request body + + body = json_format.MessageToJson( + transcoded_request["body"], use_integers_for_enums=True + ) + return body + @staticmethod def _get_query_params_json(transcoded_request): query_params = json.loads( @@ -677,7 +721,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseDeleteCloudExadataInfrastructure._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseCreateOdbNetwork._get_unset_required_fields( query_params ) ) @@ -685,11 +729,13 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseDeleteCloudVmCluster: + class _BaseCreateOdbSubnet: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") - __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = { + "odbSubnetId": "", + } @classmethod def _get_unset_required_fields(cls, message_dict): @@ -703,18 +749,28 @@ def _get_unset_required_fields(cls, message_dict): def _get_http_options(): http_options: List[Dict[str, str]] = [ { - "method": "delete", - "uri": "/v1/{name=projects/*/locations/*/cloudVmClusters/*}", + "method": "post", + "uri": "/v1/{parent=projects/*/locations/*/odbNetworks/*}/odbSubnets", + "body": "odb_subnet", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.DeleteCloudVmClusterRequest.pb(request) + pb_request = gco_odb_subnet.CreateOdbSubnetRequest.pb(request) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request + @staticmethod + def _get_request_body_json(transcoded_request): + # Jsonify the request body + + body = json_format.MessageToJson( + transcoded_request["body"], use_integers_for_enums=True + ) + return body + @staticmethod def _get_query_params_json(transcoded_request): query_params = json.loads( @@ -724,7 +780,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseDeleteCloudVmCluster._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseCreateOdbSubnet._get_unset_required_fields( query_params ) ) @@ -732,7 +788,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseDeleteDbSystem: + class _BaseDeleteAutonomousDatabase: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -751,14 +807,14 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "delete", - "uri": "/v1/{name=projects/*/locations/*/dbSystems/*}", + "uri": "/v1/{name=projects/*/locations/*/autonomousDatabases/*}", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = db_system.DeleteDbSystemRequest.pb(request) + pb_request = oracledatabase.DeleteAutonomousDatabaseRequest.pb(request) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -771,7 +827,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseDeleteDbSystem._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseDeleteAutonomousDatabase._get_unset_required_fields( query_params ) ) @@ -779,7 +835,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseDeleteExadbVmCluster: + class _BaseDeleteCloudExadataInfrastructure: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -798,14 +854,16 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "delete", - "uri": "/v1/{name=projects/*/locations/*/exadbVmClusters/*}", + "uri": "/v1/{name=projects/*/locations/*/cloudExadataInfrastructures/*}", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.DeleteExadbVmClusterRequest.pb(request) + pb_request = oracledatabase.DeleteCloudExadataInfrastructureRequest.pb( + request + ) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -818,7 +876,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseDeleteExadbVmCluster._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseDeleteCloudExadataInfrastructure._get_unset_required_fields( query_params ) ) @@ -826,7 +884,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseDeleteExascaleDbStorageVault: + class _BaseDeleteCloudVmCluster: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -845,18 +903,14 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "delete", - "uri": "/v1/{name=projects/*/locations/*/exascaleDbStorageVaults/*}", + "uri": "/v1/{name=projects/*/locations/*/cloudVmClusters/*}", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = ( - exascale_db_storage_vault.DeleteExascaleDbStorageVaultRequest.pb( - request - ) - ) + pb_request = oracledatabase.DeleteCloudVmClusterRequest.pb(request) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -869,7 +923,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseDeleteExascaleDbStorageVault._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseDeleteCloudVmCluster._get_unset_required_fields( query_params ) ) @@ -877,7 +931,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseDeleteOdbNetwork: + class _BaseDeleteDbSystem: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -896,14 +950,14 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "delete", - "uri": "/v1/{name=projects/*/locations/*/odbNetworks/*}", + "uri": "/v1/{name=projects/*/locations/*/dbSystems/*}", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = odb_network.DeleteOdbNetworkRequest.pb(request) + pb_request = db_system.DeleteDbSystemRequest.pb(request) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -916,7 +970,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseDeleteOdbNetwork._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseDeleteDbSystem._get_unset_required_fields( query_params ) ) @@ -924,7 +978,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseDeleteOdbSubnet: + class _BaseDeleteExadbVmCluster: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -943,14 +997,14 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "delete", - "uri": "/v1/{name=projects/*/locations/*/odbNetworks/*/odbSubnets/*}", + "uri": "/v1/{name=projects/*/locations/*/exadbVmClusters/*}", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = odb_subnet.DeleteOdbSubnetRequest.pb(request) + pb_request = oracledatabase.DeleteExadbVmClusterRequest.pb(request) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -963,7 +1017,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseDeleteOdbSubnet._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseDeleteExadbVmCluster._get_unset_required_fields( query_params ) ) @@ -971,7 +1025,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseFailoverAutonomousDatabase: + class _BaseDeleteExascaleDbStorageVault: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -989,28 +1043,22 @@ def _get_unset_required_fields(cls, message_dict): def _get_http_options(): http_options: List[Dict[str, str]] = [ { - "method": "post", - "uri": "/v1/{name=projects/*/locations/*/autonomousDatabases/*}:failover", - "body": "*", + "method": "delete", + "uri": "/v1/{name=projects/*/locations/*/exascaleDbStorageVaults/*}", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.FailoverAutonomousDatabaseRequest.pb(request) + pb_request = ( + exascale_db_storage_vault.DeleteExascaleDbStorageVaultRequest.pb( + request + ) + ) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request - @staticmethod - def _get_request_body_json(transcoded_request): - # Jsonify the request body - - body = json_format.MessageToJson( - transcoded_request["body"], use_integers_for_enums=True - ) - return body - @staticmethod def _get_query_params_json(transcoded_request): query_params = json.loads( @@ -1020,7 +1068,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseFailoverAutonomousDatabase._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseDeleteExascaleDbStorageVault._get_unset_required_fields( query_params ) ) @@ -1028,7 +1076,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseGenerateAutonomousDatabaseWallet: + class _BaseDeleteGoldengateConnection: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -1046,30 +1094,20 @@ def _get_unset_required_fields(cls, message_dict): def _get_http_options(): http_options: List[Dict[str, str]] = [ { - "method": "post", - "uri": "/v1/{name=projects/*/locations/*/autonomousDatabases/*}:generateWallet", - "body": "*", + "method": "delete", + "uri": "/v1/{name=projects/*/locations/*/goldengateConnections/*}", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.GenerateAutonomousDatabaseWalletRequest.pb( + pb_request = goldengate_connection.DeleteGoldengateConnectionRequest.pb( request ) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request - @staticmethod - def _get_request_body_json(transcoded_request): - # Jsonify the request body - - body = json_format.MessageToJson( - transcoded_request["body"], use_integers_for_enums=True - ) - return body - @staticmethod def _get_query_params_json(transcoded_request): query_params = json.loads( @@ -1079,7 +1117,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseGenerateAutonomousDatabaseWallet._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseDeleteGoldengateConnection._get_unset_required_fields( query_params ) ) @@ -1087,7 +1125,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseGetAutonomousDatabase: + class _BaseDeleteGoldengateConnectionAssignment: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -1105,15 +1143,17 @@ def _get_unset_required_fields(cls, message_dict): def _get_http_options(): http_options: List[Dict[str, str]] = [ { - "method": "get", - "uri": "/v1/{name=projects/*/locations/*/autonomousDatabases/*}", + "method": "delete", + "uri": "/v1/{name=projects/*/locations/*/goldengateConnectionAssignments/*}", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.GetAutonomousDatabaseRequest.pb(request) + pb_request = goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest.pb( + request + ) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -1126,7 +1166,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseGetAutonomousDatabase._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseDeleteGoldengateConnectionAssignment._get_unset_required_fields( query_params ) ) @@ -1134,7 +1174,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseGetCloudExadataInfrastructure: + class _BaseDeleteGoldengateDeployment: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -1152,15 +1192,17 @@ def _get_unset_required_fields(cls, message_dict): def _get_http_options(): http_options: List[Dict[str, str]] = [ { - "method": "get", - "uri": "/v1/{name=projects/*/locations/*/cloudExadataInfrastructures/*}", + "method": "delete", + "uri": "/v1/{name=projects/*/locations/*/goldengateDeployments/*}", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.GetCloudExadataInfrastructureRequest.pb(request) + pb_request = goldengate_deployment.DeleteGoldengateDeploymentRequest.pb( + request + ) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -1173,7 +1215,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseGetCloudExadataInfrastructure._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseDeleteGoldengateDeployment._get_unset_required_fields( query_params ) ) @@ -1181,7 +1223,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseGetCloudVmCluster: + class _BaseDeleteOdbNetwork: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -1199,15 +1241,15 @@ def _get_unset_required_fields(cls, message_dict): def _get_http_options(): http_options: List[Dict[str, str]] = [ { - "method": "get", - "uri": "/v1/{name=projects/*/locations/*/cloudVmClusters/*}", + "method": "delete", + "uri": "/v1/{name=projects/*/locations/*/odbNetworks/*}", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.GetCloudVmClusterRequest.pb(request) + pb_request = odb_network.DeleteOdbNetworkRequest.pb(request) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -1220,7 +1262,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseGetCloudVmCluster._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseDeleteOdbNetwork._get_unset_required_fields( query_params ) ) @@ -1228,7 +1270,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseGetDatabase: + class _BaseDeleteOdbSubnet: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -1246,15 +1288,15 @@ def _get_unset_required_fields(cls, message_dict): def _get_http_options(): http_options: List[Dict[str, str]] = [ { - "method": "get", - "uri": "/v1/{name=projects/*/locations/*/databases/*}", + "method": "delete", + "uri": "/v1/{name=projects/*/locations/*/odbNetworks/*/odbSubnets/*}", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = database.GetDatabaseRequest.pb(request) + pb_request = odb_subnet.DeleteOdbSubnetRequest.pb(request) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -1267,7 +1309,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseGetDatabase._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseDeleteOdbSubnet._get_unset_required_fields( query_params ) ) @@ -1275,7 +1317,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseGetDbSystem: + class _BaseFailoverAutonomousDatabase: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -1293,18 +1335,28 @@ def _get_unset_required_fields(cls, message_dict): def _get_http_options(): http_options: List[Dict[str, str]] = [ { - "method": "get", - "uri": "/v1/{name=projects/*/locations/*/dbSystems/*}", + "method": "post", + "uri": "/v1/{name=projects/*/locations/*/autonomousDatabases/*}:failover", + "body": "*", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = db_system.GetDbSystemRequest.pb(request) + pb_request = oracledatabase.FailoverAutonomousDatabaseRequest.pb(request) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request + @staticmethod + def _get_request_body_json(transcoded_request): + # Jsonify the request body + + body = json_format.MessageToJson( + transcoded_request["body"], use_integers_for_enums=True + ) + return body + @staticmethod def _get_query_params_json(transcoded_request): query_params = json.loads( @@ -1314,7 +1366,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseGetDbSystem._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseFailoverAutonomousDatabase._get_unset_required_fields( query_params ) ) @@ -1322,7 +1374,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseGetExadbVmCluster: + class _BaseGenerateAutonomousDatabaseWallet: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -1340,18 +1392,30 @@ def _get_unset_required_fields(cls, message_dict): def _get_http_options(): http_options: List[Dict[str, str]] = [ { - "method": "get", - "uri": "/v1/{name=projects/*/locations/*/exadbVmClusters/*}", + "method": "post", + "uri": "/v1/{name=projects/*/locations/*/autonomousDatabases/*}:generateWallet", + "body": "*", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.GetExadbVmClusterRequest.pb(request) + pb_request = oracledatabase.GenerateAutonomousDatabaseWalletRequest.pb( + request + ) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request + @staticmethod + def _get_request_body_json(transcoded_request): + # Jsonify the request body + + body = json_format.MessageToJson( + transcoded_request["body"], use_integers_for_enums=True + ) + return body + @staticmethod def _get_query_params_json(transcoded_request): query_params = json.loads( @@ -1361,7 +1425,289 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseGetExadbVmCluster._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseGenerateAutonomousDatabaseWallet._get_unset_required_fields( + query_params + ) + ) + + query_params["$alt"] = "json;enum-encoding=int" + return query_params + + class _BaseGetAutonomousDatabase: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + + @classmethod + def _get_unset_required_fields(cls, message_dict): + return { + k: v + for k, v in cls.__REQUIRED_FIELDS_DEFAULT_VALUES.items() + if k not in message_dict + } + + @staticmethod + def _get_http_options(): + http_options: List[Dict[str, str]] = [ + { + "method": "get", + "uri": "/v1/{name=projects/*/locations/*/autonomousDatabases/*}", + }, + ] + return http_options + + @staticmethod + def _get_transcoded_request(http_options, request): + pb_request = oracledatabase.GetAutonomousDatabaseRequest.pb(request) + transcoded_request = path_template.transcode(http_options, pb_request) + return transcoded_request + + @staticmethod + def _get_query_params_json(transcoded_request): + query_params = json.loads( + json_format.MessageToJson( + transcoded_request["query_params"], + use_integers_for_enums=True, + ) + ) + query_params.update( + _BaseOracleDatabaseRestTransport._BaseGetAutonomousDatabase._get_unset_required_fields( + query_params + ) + ) + + query_params["$alt"] = "json;enum-encoding=int" + return query_params + + class _BaseGetCloudExadataInfrastructure: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + + @classmethod + def _get_unset_required_fields(cls, message_dict): + return { + k: v + for k, v in cls.__REQUIRED_FIELDS_DEFAULT_VALUES.items() + if k not in message_dict + } + + @staticmethod + def _get_http_options(): + http_options: List[Dict[str, str]] = [ + { + "method": "get", + "uri": "/v1/{name=projects/*/locations/*/cloudExadataInfrastructures/*}", + }, + ] + return http_options + + @staticmethod + def _get_transcoded_request(http_options, request): + pb_request = oracledatabase.GetCloudExadataInfrastructureRequest.pb(request) + transcoded_request = path_template.transcode(http_options, pb_request) + return transcoded_request + + @staticmethod + def _get_query_params_json(transcoded_request): + query_params = json.loads( + json_format.MessageToJson( + transcoded_request["query_params"], + use_integers_for_enums=True, + ) + ) + query_params.update( + _BaseOracleDatabaseRestTransport._BaseGetCloudExadataInfrastructure._get_unset_required_fields( + query_params + ) + ) + + query_params["$alt"] = "json;enum-encoding=int" + return query_params + + class _BaseGetCloudVmCluster: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + + @classmethod + def _get_unset_required_fields(cls, message_dict): + return { + k: v + for k, v in cls.__REQUIRED_FIELDS_DEFAULT_VALUES.items() + if k not in message_dict + } + + @staticmethod + def _get_http_options(): + http_options: List[Dict[str, str]] = [ + { + "method": "get", + "uri": "/v1/{name=projects/*/locations/*/cloudVmClusters/*}", + }, + ] + return http_options + + @staticmethod + def _get_transcoded_request(http_options, request): + pb_request = oracledatabase.GetCloudVmClusterRequest.pb(request) + transcoded_request = path_template.transcode(http_options, pb_request) + return transcoded_request + + @staticmethod + def _get_query_params_json(transcoded_request): + query_params = json.loads( + json_format.MessageToJson( + transcoded_request["query_params"], + use_integers_for_enums=True, + ) + ) + query_params.update( + _BaseOracleDatabaseRestTransport._BaseGetCloudVmCluster._get_unset_required_fields( + query_params + ) + ) + + query_params["$alt"] = "json;enum-encoding=int" + return query_params + + class _BaseGetDatabase: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + + @classmethod + def _get_unset_required_fields(cls, message_dict): + return { + k: v + for k, v in cls.__REQUIRED_FIELDS_DEFAULT_VALUES.items() + if k not in message_dict + } + + @staticmethod + def _get_http_options(): + http_options: List[Dict[str, str]] = [ + { + "method": "get", + "uri": "/v1/{name=projects/*/locations/*/databases/*}", + }, + ] + return http_options + + @staticmethod + def _get_transcoded_request(http_options, request): + pb_request = database.GetDatabaseRequest.pb(request) + transcoded_request = path_template.transcode(http_options, pb_request) + return transcoded_request + + @staticmethod + def _get_query_params_json(transcoded_request): + query_params = json.loads( + json_format.MessageToJson( + transcoded_request["query_params"], + use_integers_for_enums=True, + ) + ) + query_params.update( + _BaseOracleDatabaseRestTransport._BaseGetDatabase._get_unset_required_fields( + query_params + ) + ) + + query_params["$alt"] = "json;enum-encoding=int" + return query_params + + class _BaseGetDbSystem: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + + @classmethod + def _get_unset_required_fields(cls, message_dict): + return { + k: v + for k, v in cls.__REQUIRED_FIELDS_DEFAULT_VALUES.items() + if k not in message_dict + } + + @staticmethod + def _get_http_options(): + http_options: List[Dict[str, str]] = [ + { + "method": "get", + "uri": "/v1/{name=projects/*/locations/*/dbSystems/*}", + }, + ] + return http_options + + @staticmethod + def _get_transcoded_request(http_options, request): + pb_request = db_system.GetDbSystemRequest.pb(request) + transcoded_request = path_template.transcode(http_options, pb_request) + return transcoded_request + + @staticmethod + def _get_query_params_json(transcoded_request): + query_params = json.loads( + json_format.MessageToJson( + transcoded_request["query_params"], + use_integers_for_enums=True, + ) + ) + query_params.update( + _BaseOracleDatabaseRestTransport._BaseGetDbSystem._get_unset_required_fields( + query_params + ) + ) + + query_params["$alt"] = "json;enum-encoding=int" + return query_params + + class _BaseGetExadbVmCluster: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + + @classmethod + def _get_unset_required_fields(cls, message_dict): + return { + k: v + for k, v in cls.__REQUIRED_FIELDS_DEFAULT_VALUES.items() + if k not in message_dict + } + + @staticmethod + def _get_http_options(): + http_options: List[Dict[str, str]] = [ + { + "method": "get", + "uri": "/v1/{name=projects/*/locations/*/exadbVmClusters/*}", + }, + ] + return http_options + + @staticmethod + def _get_transcoded_request(http_options, request): + pb_request = oracledatabase.GetExadbVmClusterRequest.pb(request) + transcoded_request = path_template.transcode(http_options, pb_request) + return transcoded_request + + @staticmethod + def _get_query_params_json(transcoded_request): + query_params = json.loads( + json_format.MessageToJson( + transcoded_request["query_params"], + use_integers_for_enums=True, + ) + ) + query_params.update( + _BaseOracleDatabaseRestTransport._BaseGetExadbVmCluster._get_unset_required_fields( query_params ) ) @@ -1388,14 +1734,743 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "get", - "uri": "/v1/{name=projects/*/locations/*/exascaleDbStorageVaults/*}", + "uri": "/v1/{name=projects/*/locations/*/exascaleDbStorageVaults/*}", + }, + ] + return http_options + + @staticmethod + def _get_transcoded_request(http_options, request): + pb_request = exascale_db_storage_vault.GetExascaleDbStorageVaultRequest.pb( + request + ) + transcoded_request = path_template.transcode(http_options, pb_request) + return transcoded_request + + @staticmethod + def _get_query_params_json(transcoded_request): + query_params = json.loads( + json_format.MessageToJson( + transcoded_request["query_params"], + use_integers_for_enums=True, + ) + ) + query_params.update( + _BaseOracleDatabaseRestTransport._BaseGetExascaleDbStorageVault._get_unset_required_fields( + query_params + ) + ) + + query_params["$alt"] = "json;enum-encoding=int" + return query_params + + class _BaseGetGoldengateConnection: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + + @classmethod + def _get_unset_required_fields(cls, message_dict): + return { + k: v + for k, v in cls.__REQUIRED_FIELDS_DEFAULT_VALUES.items() + if k not in message_dict + } + + @staticmethod + def _get_http_options(): + http_options: List[Dict[str, str]] = [ + { + "method": "get", + "uri": "/v1/{name=projects/*/locations/*/goldengateConnections/*}", + }, + ] + return http_options + + @staticmethod + def _get_transcoded_request(http_options, request): + pb_request = goldengate_connection.GetGoldengateConnectionRequest.pb( + request + ) + transcoded_request = path_template.transcode(http_options, pb_request) + return transcoded_request + + @staticmethod + def _get_query_params_json(transcoded_request): + query_params = json.loads( + json_format.MessageToJson( + transcoded_request["query_params"], + use_integers_for_enums=True, + ) + ) + query_params.update( + _BaseOracleDatabaseRestTransport._BaseGetGoldengateConnection._get_unset_required_fields( + query_params + ) + ) + + query_params["$alt"] = "json;enum-encoding=int" + return query_params + + class _BaseGetGoldengateConnectionAssignment: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + + @classmethod + def _get_unset_required_fields(cls, message_dict): + return { + k: v + for k, v in cls.__REQUIRED_FIELDS_DEFAULT_VALUES.items() + if k not in message_dict + } + + @staticmethod + def _get_http_options(): + http_options: List[Dict[str, str]] = [ + { + "method": "get", + "uri": "/v1/{name=projects/*/locations/*/goldengateConnectionAssignments/*}", + }, + ] + return http_options + + @staticmethod + def _get_transcoded_request(http_options, request): + pb_request = goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest.pb( + request + ) + transcoded_request = path_template.transcode(http_options, pb_request) + return transcoded_request + + @staticmethod + def _get_query_params_json(transcoded_request): + query_params = json.loads( + json_format.MessageToJson( + transcoded_request["query_params"], + use_integers_for_enums=True, + ) + ) + query_params.update( + _BaseOracleDatabaseRestTransport._BaseGetGoldengateConnectionAssignment._get_unset_required_fields( + query_params + ) + ) + + query_params["$alt"] = "json;enum-encoding=int" + return query_params + + class _BaseGetGoldengateConnectionType: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + + @classmethod + def _get_unset_required_fields(cls, message_dict): + return { + k: v + for k, v in cls.__REQUIRED_FIELDS_DEFAULT_VALUES.items() + if k not in message_dict + } + + @staticmethod + def _get_http_options(): + http_options: List[Dict[str, str]] = [ + { + "method": "get", + "uri": "/v1/{name=projects/*/locations/*/goldengateConnectionTypes/*}", + }, + ] + return http_options + + @staticmethod + def _get_transcoded_request(http_options, request): + pb_request = ( + goldengate_connection_type.GetGoldengateConnectionTypeRequest.pb( + request + ) + ) + transcoded_request = path_template.transcode(http_options, pb_request) + return transcoded_request + + @staticmethod + def _get_query_params_json(transcoded_request): + query_params = json.loads( + json_format.MessageToJson( + transcoded_request["query_params"], + use_integers_for_enums=True, + ) + ) + query_params.update( + _BaseOracleDatabaseRestTransport._BaseGetGoldengateConnectionType._get_unset_required_fields( + query_params + ) + ) + + query_params["$alt"] = "json;enum-encoding=int" + return query_params + + class _BaseGetGoldengateDeployment: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + + @classmethod + def _get_unset_required_fields(cls, message_dict): + return { + k: v + for k, v in cls.__REQUIRED_FIELDS_DEFAULT_VALUES.items() + if k not in message_dict + } + + @staticmethod + def _get_http_options(): + http_options: List[Dict[str, str]] = [ + { + "method": "get", + "uri": "/v1/{name=projects/*/locations/*/goldengateDeployments/*}", + }, + ] + return http_options + + @staticmethod + def _get_transcoded_request(http_options, request): + pb_request = goldengate_deployment.GetGoldengateDeploymentRequest.pb( + request + ) + transcoded_request = path_template.transcode(http_options, pb_request) + return transcoded_request + + @staticmethod + def _get_query_params_json(transcoded_request): + query_params = json.loads( + json_format.MessageToJson( + transcoded_request["query_params"], + use_integers_for_enums=True, + ) + ) + query_params.update( + _BaseOracleDatabaseRestTransport._BaseGetGoldengateDeployment._get_unset_required_fields( + query_params + ) + ) + + query_params["$alt"] = "json;enum-encoding=int" + return query_params + + class _BaseGetGoldengateDeploymentEnvironment: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + + @classmethod + def _get_unset_required_fields(cls, message_dict): + return { + k: v + for k, v in cls.__REQUIRED_FIELDS_DEFAULT_VALUES.items() + if k not in message_dict + } + + @staticmethod + def _get_http_options(): + http_options: List[Dict[str, str]] = [ + { + "method": "get", + "uri": "/v1/{name=projects/*/locations/*/goldengateDeploymentEnvironments/*}", + }, + ] + return http_options + + @staticmethod + def _get_transcoded_request(http_options, request): + pb_request = goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest.pb( + request + ) + transcoded_request = path_template.transcode(http_options, pb_request) + return transcoded_request + + @staticmethod + def _get_query_params_json(transcoded_request): + query_params = json.loads( + json_format.MessageToJson( + transcoded_request["query_params"], + use_integers_for_enums=True, + ) + ) + query_params.update( + _BaseOracleDatabaseRestTransport._BaseGetGoldengateDeploymentEnvironment._get_unset_required_fields( + query_params + ) + ) + + query_params["$alt"] = "json;enum-encoding=int" + return query_params + + class _BaseGetGoldengateDeploymentType: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + + @classmethod + def _get_unset_required_fields(cls, message_dict): + return { + k: v + for k, v in cls.__REQUIRED_FIELDS_DEFAULT_VALUES.items() + if k not in message_dict + } + + @staticmethod + def _get_http_options(): + http_options: List[Dict[str, str]] = [ + { + "method": "get", + "uri": "/v1/{name=projects/*/locations/*/goldengateDeploymentTypes/*}", + }, + ] + return http_options + + @staticmethod + def _get_transcoded_request(http_options, request): + pb_request = ( + goldengate_deployment_type.GetGoldengateDeploymentTypeRequest.pb( + request + ) + ) + transcoded_request = path_template.transcode(http_options, pb_request) + return transcoded_request + + @staticmethod + def _get_query_params_json(transcoded_request): + query_params = json.loads( + json_format.MessageToJson( + transcoded_request["query_params"], + use_integers_for_enums=True, + ) + ) + query_params.update( + _BaseOracleDatabaseRestTransport._BaseGetGoldengateDeploymentType._get_unset_required_fields( + query_params + ) + ) + + query_params["$alt"] = "json;enum-encoding=int" + return query_params + + class _BaseGetGoldengateDeploymentVersion: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + + @classmethod + def _get_unset_required_fields(cls, message_dict): + return { + k: v + for k, v in cls.__REQUIRED_FIELDS_DEFAULT_VALUES.items() + if k not in message_dict + } + + @staticmethod + def _get_http_options(): + http_options: List[Dict[str, str]] = [ + { + "method": "get", + "uri": "/v1/{name=projects/*/locations/*/goldengateDeploymentVersions/*}", + }, + ] + return http_options + + @staticmethod + def _get_transcoded_request(http_options, request): + pb_request = ( + goldengate_deployment_version.GetGoldengateDeploymentVersionRequest.pb( + request + ) + ) + transcoded_request = path_template.transcode(http_options, pb_request) + return transcoded_request + + @staticmethod + def _get_query_params_json(transcoded_request): + query_params = json.loads( + json_format.MessageToJson( + transcoded_request["query_params"], + use_integers_for_enums=True, + ) + ) + query_params.update( + _BaseOracleDatabaseRestTransport._BaseGetGoldengateDeploymentVersion._get_unset_required_fields( + query_params + ) + ) + + query_params["$alt"] = "json;enum-encoding=int" + return query_params + + class _BaseGetOdbNetwork: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + + @classmethod + def _get_unset_required_fields(cls, message_dict): + return { + k: v + for k, v in cls.__REQUIRED_FIELDS_DEFAULT_VALUES.items() + if k not in message_dict + } + + @staticmethod + def _get_http_options(): + http_options: List[Dict[str, str]] = [ + { + "method": "get", + "uri": "/v1/{name=projects/*/locations/*/odbNetworks/*}", + }, + ] + return http_options + + @staticmethod + def _get_transcoded_request(http_options, request): + pb_request = odb_network.GetOdbNetworkRequest.pb(request) + transcoded_request = path_template.transcode(http_options, pb_request) + return transcoded_request + + @staticmethod + def _get_query_params_json(transcoded_request): + query_params = json.loads( + json_format.MessageToJson( + transcoded_request["query_params"], + use_integers_for_enums=True, + ) + ) + query_params.update( + _BaseOracleDatabaseRestTransport._BaseGetOdbNetwork._get_unset_required_fields( + query_params + ) + ) + + query_params["$alt"] = "json;enum-encoding=int" + return query_params + + class _BaseGetOdbSubnet: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + + @classmethod + def _get_unset_required_fields(cls, message_dict): + return { + k: v + for k, v in cls.__REQUIRED_FIELDS_DEFAULT_VALUES.items() + if k not in message_dict + } + + @staticmethod + def _get_http_options(): + http_options: List[Dict[str, str]] = [ + { + "method": "get", + "uri": "/v1/{name=projects/*/locations/*/odbNetworks/*/odbSubnets/*}", + }, + ] + return http_options + + @staticmethod + def _get_transcoded_request(http_options, request): + pb_request = odb_subnet.GetOdbSubnetRequest.pb(request) + transcoded_request = path_template.transcode(http_options, pb_request) + return transcoded_request + + @staticmethod + def _get_query_params_json(transcoded_request): + query_params = json.loads( + json_format.MessageToJson( + transcoded_request["query_params"], + use_integers_for_enums=True, + ) + ) + query_params.update( + _BaseOracleDatabaseRestTransport._BaseGetOdbSubnet._get_unset_required_fields( + query_params + ) + ) + + query_params["$alt"] = "json;enum-encoding=int" + return query_params + + class _BaseGetPluggableDatabase: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + + @classmethod + def _get_unset_required_fields(cls, message_dict): + return { + k: v + for k, v in cls.__REQUIRED_FIELDS_DEFAULT_VALUES.items() + if k not in message_dict + } + + @staticmethod + def _get_http_options(): + http_options: List[Dict[str, str]] = [ + { + "method": "get", + "uri": "/v1/{name=projects/*/locations/*/pluggableDatabases/*}", + }, + ] + return http_options + + @staticmethod + def _get_transcoded_request(http_options, request): + pb_request = pluggable_database.GetPluggableDatabaseRequest.pb(request) + transcoded_request = path_template.transcode(http_options, pb_request) + return transcoded_request + + @staticmethod + def _get_query_params_json(transcoded_request): + query_params = json.loads( + json_format.MessageToJson( + transcoded_request["query_params"], + use_integers_for_enums=True, + ) + ) + query_params.update( + _BaseOracleDatabaseRestTransport._BaseGetPluggableDatabase._get_unset_required_fields( + query_params + ) + ) + + query_params["$alt"] = "json;enum-encoding=int" + return query_params + + class _BaseListAutonomousDatabaseBackups: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + + @classmethod + def _get_unset_required_fields(cls, message_dict): + return { + k: v + for k, v in cls.__REQUIRED_FIELDS_DEFAULT_VALUES.items() + if k not in message_dict + } + + @staticmethod + def _get_http_options(): + http_options: List[Dict[str, str]] = [ + { + "method": "get", + "uri": "/v1/{parent=projects/*/locations/*}/autonomousDatabaseBackups", + }, + ] + return http_options + + @staticmethod + def _get_transcoded_request(http_options, request): + pb_request = oracledatabase.ListAutonomousDatabaseBackupsRequest.pb(request) + transcoded_request = path_template.transcode(http_options, pb_request) + return transcoded_request + + @staticmethod + def _get_query_params_json(transcoded_request): + query_params = json.loads( + json_format.MessageToJson( + transcoded_request["query_params"], + use_integers_for_enums=True, + ) + ) + query_params.update( + _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabaseBackups._get_unset_required_fields( + query_params + ) + ) + + query_params["$alt"] = "json;enum-encoding=int" + return query_params + + class _BaseListAutonomousDatabaseCharacterSets: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + + @classmethod + def _get_unset_required_fields(cls, message_dict): + return { + k: v + for k, v in cls.__REQUIRED_FIELDS_DEFAULT_VALUES.items() + if k not in message_dict + } + + @staticmethod + def _get_http_options(): + http_options: List[Dict[str, str]] = [ + { + "method": "get", + "uri": "/v1/{parent=projects/*/locations/*}/autonomousDatabaseCharacterSets", + }, + ] + return http_options + + @staticmethod + def _get_transcoded_request(http_options, request): + pb_request = oracledatabase.ListAutonomousDatabaseCharacterSetsRequest.pb( + request + ) + transcoded_request = path_template.transcode(http_options, pb_request) + return transcoded_request + + @staticmethod + def _get_query_params_json(transcoded_request): + query_params = json.loads( + json_format.MessageToJson( + transcoded_request["query_params"], + use_integers_for_enums=True, + ) + ) + query_params.update( + _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabaseCharacterSets._get_unset_required_fields( + query_params + ) + ) + + query_params["$alt"] = "json;enum-encoding=int" + return query_params + + class _BaseListAutonomousDatabases: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + + @classmethod + def _get_unset_required_fields(cls, message_dict): + return { + k: v + for k, v in cls.__REQUIRED_FIELDS_DEFAULT_VALUES.items() + if k not in message_dict + } + + @staticmethod + def _get_http_options(): + http_options: List[Dict[str, str]] = [ + { + "method": "get", + "uri": "/v1/{parent=projects/*/locations/*}/autonomousDatabases", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = exascale_db_storage_vault.GetExascaleDbStorageVaultRequest.pb( + pb_request = oracledatabase.ListAutonomousDatabasesRequest.pb(request) + transcoded_request = path_template.transcode(http_options, pb_request) + return transcoded_request + + @staticmethod + def _get_query_params_json(transcoded_request): + query_params = json.loads( + json_format.MessageToJson( + transcoded_request["query_params"], + use_integers_for_enums=True, + ) + ) + query_params.update( + _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabases._get_unset_required_fields( + query_params + ) + ) + + query_params["$alt"] = "json;enum-encoding=int" + return query_params + + class _BaseListAutonomousDbVersions: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + + @classmethod + def _get_unset_required_fields(cls, message_dict): + return { + k: v + for k, v in cls.__REQUIRED_FIELDS_DEFAULT_VALUES.items() + if k not in message_dict + } + + @staticmethod + def _get_http_options(): + http_options: List[Dict[str, str]] = [ + { + "method": "get", + "uri": "/v1/{parent=projects/*/locations/*}/autonomousDbVersions", + }, + ] + return http_options + + @staticmethod + def _get_transcoded_request(http_options, request): + pb_request = oracledatabase.ListAutonomousDbVersionsRequest.pb(request) + transcoded_request = path_template.transcode(http_options, pb_request) + return transcoded_request + + @staticmethod + def _get_query_params_json(transcoded_request): + query_params = json.loads( + json_format.MessageToJson( + transcoded_request["query_params"], + use_integers_for_enums=True, + ) + ) + query_params.update( + _BaseOracleDatabaseRestTransport._BaseListAutonomousDbVersions._get_unset_required_fields( + query_params + ) + ) + + query_params["$alt"] = "json;enum-encoding=int" + return query_params + + class _BaseListCloudExadataInfrastructures: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + + @classmethod + def _get_unset_required_fields(cls, message_dict): + return { + k: v + for k, v in cls.__REQUIRED_FIELDS_DEFAULT_VALUES.items() + if k not in message_dict + } + + @staticmethod + def _get_http_options(): + http_options: List[Dict[str, str]] = [ + { + "method": "get", + "uri": "/v1/{parent=projects/*/locations/*}/cloudExadataInfrastructures", + }, + ] + return http_options + + @staticmethod + def _get_transcoded_request(http_options, request): + pb_request = oracledatabase.ListCloudExadataInfrastructuresRequest.pb( request ) transcoded_request = path_template.transcode(http_options, pb_request) @@ -1410,7 +2485,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseGetExascaleDbStorageVault._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseListCloudExadataInfrastructures._get_unset_required_fields( query_params ) ) @@ -1418,7 +2493,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseGetOdbNetwork: + class _BaseListCloudVmClusters: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -1437,14 +2512,14 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "get", - "uri": "/v1/{name=projects/*/locations/*/odbNetworks/*}", + "uri": "/v1/{parent=projects/*/locations/*}/cloudVmClusters", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = odb_network.GetOdbNetworkRequest.pb(request) + pb_request = oracledatabase.ListCloudVmClustersRequest.pb(request) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -1457,7 +2532,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseGetOdbNetwork._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseListCloudVmClusters._get_unset_required_fields( query_params ) ) @@ -1465,7 +2540,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseGetOdbSubnet: + class _BaseListDatabaseCharacterSets: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -1484,14 +2559,16 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "get", - "uri": "/v1/{name=projects/*/locations/*/odbNetworks/*/odbSubnets/*}", + "uri": "/v1/{parent=projects/*/locations/*}/databaseCharacterSets", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = odb_subnet.GetOdbSubnetRequest.pb(request) + pb_request = database_character_set.ListDatabaseCharacterSetsRequest.pb( + request + ) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -1504,7 +2581,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseGetOdbSubnet._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseListDatabaseCharacterSets._get_unset_required_fields( query_params ) ) @@ -1512,7 +2589,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseGetPluggableDatabase: + class _BaseListDatabases: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -1531,14 +2608,14 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "get", - "uri": "/v1/{name=projects/*/locations/*/pluggableDatabases/*}", + "uri": "/v1/{parent=projects/*/locations/*}/databases", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = pluggable_database.GetPluggableDatabaseRequest.pb(request) + pb_request = database.ListDatabasesRequest.pb(request) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -1551,7 +2628,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseGetPluggableDatabase._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseListDatabases._get_unset_required_fields( query_params ) ) @@ -1559,7 +2636,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseListAutonomousDatabaseBackups: + class _BaseListDbNodes: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -1578,14 +2655,114 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "get", - "uri": "/v1/{parent=projects/*/locations/*}/autonomousDatabaseBackups", + "uri": "/v1/{parent=projects/*/locations/*/cloudVmClusters/*}/dbNodes", + }, + { + "method": "get", + "uri": "/v1/{parent=projects/*/locations/*/exadbVmClusters/*}/dbNodes", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.ListAutonomousDatabaseBackupsRequest.pb(request) + pb_request = oracledatabase.ListDbNodesRequest.pb(request) + transcoded_request = path_template.transcode(http_options, pb_request) + return transcoded_request + + @staticmethod + def _get_query_params_json(transcoded_request): + query_params = json.loads( + json_format.MessageToJson( + transcoded_request["query_params"], + use_integers_for_enums=True, + ) + ) + query_params.update( + _BaseOracleDatabaseRestTransport._BaseListDbNodes._get_unset_required_fields( + query_params + ) + ) + + query_params["$alt"] = "json;enum-encoding=int" + return query_params + + class _BaseListDbServers: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + + @classmethod + def _get_unset_required_fields(cls, message_dict): + return { + k: v + for k, v in cls.__REQUIRED_FIELDS_DEFAULT_VALUES.items() + if k not in message_dict + } + + @staticmethod + def _get_http_options(): + http_options: List[Dict[str, str]] = [ + { + "method": "get", + "uri": "/v1/{parent=projects/*/locations/*/cloudExadataInfrastructures/*}/dbServers", + }, + ] + return http_options + + @staticmethod + def _get_transcoded_request(http_options, request): + pb_request = oracledatabase.ListDbServersRequest.pb(request) + transcoded_request = path_template.transcode(http_options, pb_request) + return transcoded_request + + @staticmethod + def _get_query_params_json(transcoded_request): + query_params = json.loads( + json_format.MessageToJson( + transcoded_request["query_params"], + use_integers_for_enums=True, + ) + ) + query_params.update( + _BaseOracleDatabaseRestTransport._BaseListDbServers._get_unset_required_fields( + query_params + ) + ) + + query_params["$alt"] = "json;enum-encoding=int" + return query_params + + class _BaseListDbSystemInitialStorageSizes: + def __hash__(self): # pragma: NO COVER + return NotImplementedError("__hash__ must be implemented.") + + __REQUIRED_FIELDS_DEFAULT_VALUES: Dict[str, Any] = {} + + @classmethod + def _get_unset_required_fields(cls, message_dict): + return { + k: v + for k, v in cls.__REQUIRED_FIELDS_DEFAULT_VALUES.items() + if k not in message_dict + } + + @staticmethod + def _get_http_options(): + http_options: List[Dict[str, str]] = [ + { + "method": "get", + "uri": "/v1/{parent=projects/*/locations/*}/dbSystemInitialStorageSizes", + }, + ] + return http_options + + @staticmethod + def _get_transcoded_request(http_options, request): + pb_request = db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest.pb( + request + ) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -1598,7 +2775,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabaseBackups._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseListDbSystemInitialStorageSizes._get_unset_required_fields( query_params ) ) @@ -1606,7 +2783,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseListAutonomousDatabaseCharacterSets: + class _BaseListDbSystems: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -1625,16 +2802,14 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "get", - "uri": "/v1/{parent=projects/*/locations/*}/autonomousDatabaseCharacterSets", + "uri": "/v1/{parent=projects/*/locations/*}/dbSystems", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.ListAutonomousDatabaseCharacterSetsRequest.pb( - request - ) + pb_request = db_system.ListDbSystemsRequest.pb(request) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -1647,7 +2822,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabaseCharacterSets._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseListDbSystems._get_unset_required_fields( query_params ) ) @@ -1655,7 +2830,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseListAutonomousDatabases: + class _BaseListDbSystemShapes: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -1674,14 +2849,14 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "get", - "uri": "/v1/{parent=projects/*/locations/*}/autonomousDatabases", + "uri": "/v1/{parent=projects/*/locations/*}/dbSystemShapes", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.ListAutonomousDatabasesRequest.pb(request) + pb_request = oracledatabase.ListDbSystemShapesRequest.pb(request) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -1694,7 +2869,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseListAutonomousDatabases._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseListDbSystemShapes._get_unset_required_fields( query_params ) ) @@ -1702,7 +2877,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseListAutonomousDbVersions: + class _BaseListDbVersions: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -1721,14 +2896,14 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "get", - "uri": "/v1/{parent=projects/*/locations/*}/autonomousDbVersions", + "uri": "/v1/{parent=projects/*/locations/*}/dbVersions", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.ListAutonomousDbVersionsRequest.pb(request) + pb_request = db_version.ListDbVersionsRequest.pb(request) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -1741,7 +2916,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseListAutonomousDbVersions._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseListDbVersions._get_unset_required_fields( query_params ) ) @@ -1749,7 +2924,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseListCloudExadataInfrastructures: + class _BaseListEntitlements: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -1768,16 +2943,14 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "get", - "uri": "/v1/{parent=projects/*/locations/*}/cloudExadataInfrastructures", + "uri": "/v1/{parent=projects/*/locations/*}/entitlements", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.ListCloudExadataInfrastructuresRequest.pb( - request - ) + pb_request = oracledatabase.ListEntitlementsRequest.pb(request) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -1790,7 +2963,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseListCloudExadataInfrastructures._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseListEntitlements._get_unset_required_fields( query_params ) ) @@ -1798,7 +2971,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseListCloudVmClusters: + class _BaseListExadbVmClusters: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -1817,14 +2990,14 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "get", - "uri": "/v1/{parent=projects/*/locations/*}/cloudVmClusters", + "uri": "/v1/{parent=projects/*/locations/*}/exadbVmClusters", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.ListCloudVmClustersRequest.pb(request) + pb_request = oracledatabase.ListExadbVmClustersRequest.pb(request) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -1837,7 +3010,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseListCloudVmClusters._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseListExadbVmClusters._get_unset_required_fields( query_params ) ) @@ -1845,7 +3018,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseListDatabaseCharacterSets: + class _BaseListExascaleDbStorageVaults: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -1864,15 +3037,15 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "get", - "uri": "/v1/{parent=projects/*/locations/*}/databaseCharacterSets", + "uri": "/v1/{parent=projects/*/locations/*}/exascaleDbStorageVaults", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = database_character_set.ListDatabaseCharacterSetsRequest.pb( - request + pb_request = ( + exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest.pb(request) ) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -1886,7 +3059,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseListDatabaseCharacterSets._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseListExascaleDbStorageVaults._get_unset_required_fields( query_params ) ) @@ -1894,7 +3067,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseListDatabases: + class _BaseListGiVersions: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -1913,14 +3086,14 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "get", - "uri": "/v1/{parent=projects/*/locations/*}/databases", + "uri": "/v1/{parent=projects/*/locations/*}/giVersions", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = database.ListDatabasesRequest.pb(request) + pb_request = oracledatabase.ListGiVersionsRequest.pb(request) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -1933,7 +3106,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseListDatabases._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseListGiVersions._get_unset_required_fields( query_params ) ) @@ -1941,7 +3114,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseListDbNodes: + class _BaseListGoldengateConnectionAssignments: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -1960,18 +3133,16 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "get", - "uri": "/v1/{parent=projects/*/locations/*/cloudVmClusters/*}/dbNodes", - }, - { - "method": "get", - "uri": "/v1/{parent=projects/*/locations/*/exadbVmClusters/*}/dbNodes", + "uri": "/v1/{parent=projects/*/locations/*}/goldengateConnectionAssignments", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.ListDbNodesRequest.pb(request) + pb_request = goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest.pb( + request + ) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -1984,7 +3155,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseListDbNodes._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseListGoldengateConnectionAssignments._get_unset_required_fields( query_params ) ) @@ -1992,7 +3163,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseListDbServers: + class _BaseListGoldengateConnections: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -2011,14 +3182,16 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "get", - "uri": "/v1/{parent=projects/*/locations/*/cloudExadataInfrastructures/*}/dbServers", + "uri": "/v1/{parent=projects/*/locations/*}/goldengateConnections", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.ListDbServersRequest.pb(request) + pb_request = goldengate_connection.ListGoldengateConnectionsRequest.pb( + request + ) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -2031,7 +3204,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseListDbServers._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseListGoldengateConnections._get_unset_required_fields( query_params ) ) @@ -2039,7 +3212,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseListDbSystemInitialStorageSizes: + class _BaseListGoldengateConnectionTypes: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -2058,15 +3231,17 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "get", - "uri": "/v1/{parent=projects/*/locations/*}/dbSystemInitialStorageSizes", + "uri": "/v1/{parent=projects/*/locations/*}/goldengateConnectionTypes", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest.pb( - request + pb_request = ( + goldengate_connection_type.ListGoldengateConnectionTypesRequest.pb( + request + ) ) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -2080,7 +3255,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseListDbSystemInitialStorageSizes._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseListGoldengateConnectionTypes._get_unset_required_fields( query_params ) ) @@ -2088,7 +3263,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseListDbSystems: + class _BaseListGoldengateDeploymentEnvironments: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -2107,14 +3282,16 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "get", - "uri": "/v1/{parent=projects/*/locations/*}/dbSystems", + "uri": "/v1/{parent=projects/*/locations/*}/goldengateDeploymentEnvironments", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = db_system.ListDbSystemsRequest.pb(request) + pb_request = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest.pb( + request + ) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -2127,7 +3304,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseListDbSystems._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseListGoldengateDeploymentEnvironments._get_unset_required_fields( query_params ) ) @@ -2135,7 +3312,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseListDbSystemShapes: + class _BaseListGoldengateDeployments: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -2154,14 +3331,16 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "get", - "uri": "/v1/{parent=projects/*/locations/*}/dbSystemShapes", + "uri": "/v1/{parent=projects/*/locations/*}/goldengateDeployments", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.ListDbSystemShapesRequest.pb(request) + pb_request = goldengate_deployment.ListGoldengateDeploymentsRequest.pb( + request + ) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -2174,7 +3353,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseListDbSystemShapes._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseListGoldengateDeployments._get_unset_required_fields( query_params ) ) @@ -2182,7 +3361,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseListDbVersions: + class _BaseListGoldengateDeploymentTypes: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -2201,14 +3380,18 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "get", - "uri": "/v1/{parent=projects/*/locations/*}/dbVersions", + "uri": "/v1/{parent=projects/*/locations/*}/goldengateDeploymentTypes", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = db_version.ListDbVersionsRequest.pb(request) + pb_request = ( + goldengate_deployment_type.ListGoldengateDeploymentTypesRequest.pb( + request + ) + ) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -2221,7 +3404,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseListDbVersions._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseListGoldengateDeploymentTypes._get_unset_required_fields( query_params ) ) @@ -2229,7 +3412,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseListEntitlements: + class _BaseListGoldengateDeploymentVersions: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -2248,14 +3431,16 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "get", - "uri": "/v1/{parent=projects/*/locations/*}/entitlements", + "uri": "/v1/{parent=projects/*/locations/*}/goldengateDeploymentVersions", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.ListEntitlementsRequest.pb(request) + pb_request = goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest.pb( + request + ) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -2268,7 +3453,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseListEntitlements._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseListGoldengateDeploymentVersions._get_unset_required_fields( query_params ) ) @@ -2276,7 +3461,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseListExadbVmClusters: + class _BaseListMinorVersions: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -2295,14 +3480,14 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "get", - "uri": "/v1/{parent=projects/*/locations/*}/exadbVmClusters", + "uri": "/v1/{parent=projects/*/locations/*/giVersions/*}/minorVersions", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.ListExadbVmClustersRequest.pb(request) + pb_request = minor_version.ListMinorVersionsRequest.pb(request) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -2315,7 +3500,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseListExadbVmClusters._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseListMinorVersions._get_unset_required_fields( query_params ) ) @@ -2323,7 +3508,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseListExascaleDbStorageVaults: + class _BaseListOdbNetworks: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -2342,16 +3527,14 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "get", - "uri": "/v1/{parent=projects/*/locations/*}/exascaleDbStorageVaults", + "uri": "/v1/{parent=projects/*/locations/*}/odbNetworks", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = ( - exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest.pb(request) - ) + pb_request = odb_network.ListOdbNetworksRequest.pb(request) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -2364,7 +3547,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseListExascaleDbStorageVaults._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseListOdbNetworks._get_unset_required_fields( query_params ) ) @@ -2372,7 +3555,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseListGiVersions: + class _BaseListOdbSubnets: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -2391,14 +3574,14 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "get", - "uri": "/v1/{parent=projects/*/locations/*}/giVersions", + "uri": "/v1/{parent=projects/*/locations/*/odbNetworks/*}/odbSubnets", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.ListGiVersionsRequest.pb(request) + pb_request = odb_subnet.ListOdbSubnetsRequest.pb(request) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -2411,7 +3594,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseListGiVersions._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseListOdbSubnets._get_unset_required_fields( query_params ) ) @@ -2419,7 +3602,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseListMinorVersions: + class _BaseListPluggableDatabases: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -2438,14 +3621,14 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "get", - "uri": "/v1/{parent=projects/*/locations/*/giVersions/*}/minorVersions", + "uri": "/v1/{parent=projects/*/locations/*}/pluggableDatabases", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = minor_version.ListMinorVersionsRequest.pb(request) + pb_request = pluggable_database.ListPluggableDatabasesRequest.pb(request) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -2458,7 +3641,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseListMinorVersions._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseListPluggableDatabases._get_unset_required_fields( query_params ) ) @@ -2466,7 +3649,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseListOdbNetworks: + class _BaseRemoveVirtualMachineExadbVmCluster: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -2484,18 +3667,30 @@ def _get_unset_required_fields(cls, message_dict): def _get_http_options(): http_options: List[Dict[str, str]] = [ { - "method": "get", - "uri": "/v1/{parent=projects/*/locations/*}/odbNetworks", + "method": "post", + "uri": "/v1/{name=projects/*/locations/*/exadbVmClusters/*}:removeVirtualMachine", + "body": "*", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = odb_network.ListOdbNetworksRequest.pb(request) + pb_request = oracledatabase.RemoveVirtualMachineExadbVmClusterRequest.pb( + request + ) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request + @staticmethod + def _get_request_body_json(transcoded_request): + # Jsonify the request body + + body = json_format.MessageToJson( + transcoded_request["body"], use_integers_for_enums=True + ) + return body + @staticmethod def _get_query_params_json(transcoded_request): query_params = json.loads( @@ -2505,7 +3700,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseListOdbNetworks._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseRemoveVirtualMachineExadbVmCluster._get_unset_required_fields( query_params ) ) @@ -2513,7 +3708,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseListOdbSubnets: + class _BaseRestartAutonomousDatabase: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -2531,18 +3726,28 @@ def _get_unset_required_fields(cls, message_dict): def _get_http_options(): http_options: List[Dict[str, str]] = [ { - "method": "get", - "uri": "/v1/{parent=projects/*/locations/*/odbNetworks/*}/odbSubnets", + "method": "post", + "uri": "/v1/{name=projects/*/locations/*/autonomousDatabases/*}:restart", + "body": "*", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = odb_subnet.ListOdbSubnetsRequest.pb(request) + pb_request = oracledatabase.RestartAutonomousDatabaseRequest.pb(request) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request + @staticmethod + def _get_request_body_json(transcoded_request): + # Jsonify the request body + + body = json_format.MessageToJson( + transcoded_request["body"], use_integers_for_enums=True + ) + return body + @staticmethod def _get_query_params_json(transcoded_request): query_params = json.loads( @@ -2552,7 +3757,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseListOdbSubnets._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseRestartAutonomousDatabase._get_unset_required_fields( query_params ) ) @@ -2560,7 +3765,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseListPluggableDatabases: + class _BaseRestoreAutonomousDatabase: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -2578,18 +3783,28 @@ def _get_unset_required_fields(cls, message_dict): def _get_http_options(): http_options: List[Dict[str, str]] = [ { - "method": "get", - "uri": "/v1/{parent=projects/*/locations/*}/pluggableDatabases", + "method": "post", + "uri": "/v1/{name=projects/*/locations/*/autonomousDatabases/*}:restore", + "body": "*", }, ] return http_options @staticmethod def _get_transcoded_request(http_options, request): - pb_request = pluggable_database.ListPluggableDatabasesRequest.pb(request) + pb_request = oracledatabase.RestoreAutonomousDatabaseRequest.pb(request) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request + @staticmethod + def _get_request_body_json(transcoded_request): + # Jsonify the request body + + body = json_format.MessageToJson( + transcoded_request["body"], use_integers_for_enums=True + ) + return body + @staticmethod def _get_query_params_json(transcoded_request): query_params = json.loads( @@ -2599,7 +3814,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseListPluggableDatabases._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseRestoreAutonomousDatabase._get_unset_required_fields( query_params ) ) @@ -2607,7 +3822,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseRemoveVirtualMachineExadbVmCluster: + class _BaseStartAutonomousDatabase: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -2626,7 +3841,7 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "post", - "uri": "/v1/{name=projects/*/locations/*/exadbVmClusters/*}:removeVirtualMachine", + "uri": "/v1/{name=projects/*/locations/*/autonomousDatabases/*}:start", "body": "*", }, ] @@ -2634,9 +3849,7 @@ def _get_http_options(): @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.RemoveVirtualMachineExadbVmClusterRequest.pb( - request - ) + pb_request = oracledatabase.StartAutonomousDatabaseRequest.pb(request) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -2658,7 +3871,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseRemoveVirtualMachineExadbVmCluster._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseStartAutonomousDatabase._get_unset_required_fields( query_params ) ) @@ -2666,7 +3879,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseRestartAutonomousDatabase: + class _BaseStartGoldengateDeployment: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -2685,7 +3898,7 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "post", - "uri": "/v1/{name=projects/*/locations/*/autonomousDatabases/*}:restart", + "uri": "/v1/{name=projects/*/locations/*/goldengateDeployments/*}:start", "body": "*", }, ] @@ -2693,7 +3906,9 @@ def _get_http_options(): @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.RestartAutonomousDatabaseRequest.pb(request) + pb_request = goldengate_deployment.StartGoldengateDeploymentRequest.pb( + request + ) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -2715,7 +3930,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseRestartAutonomousDatabase._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseStartGoldengateDeployment._get_unset_required_fields( query_params ) ) @@ -2723,7 +3938,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseRestoreAutonomousDatabase: + class _BaseStopAutonomousDatabase: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -2742,7 +3957,7 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "post", - "uri": "/v1/{name=projects/*/locations/*/autonomousDatabases/*}:restore", + "uri": "/v1/{name=projects/*/locations/*/autonomousDatabases/*}:stop", "body": "*", }, ] @@ -2750,7 +3965,7 @@ def _get_http_options(): @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.RestoreAutonomousDatabaseRequest.pb(request) + pb_request = oracledatabase.StopAutonomousDatabaseRequest.pb(request) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -2772,7 +3987,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseRestoreAutonomousDatabase._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseStopAutonomousDatabase._get_unset_required_fields( query_params ) ) @@ -2780,7 +3995,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseStartAutonomousDatabase: + class _BaseStopGoldengateDeployment: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -2799,7 +4014,7 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "post", - "uri": "/v1/{name=projects/*/locations/*/autonomousDatabases/*}:start", + "uri": "/v1/{name=projects/*/locations/*/goldengateDeployments/*}:stop", "body": "*", }, ] @@ -2807,7 +4022,9 @@ def _get_http_options(): @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.StartAutonomousDatabaseRequest.pb(request) + pb_request = goldengate_deployment.StopGoldengateDeploymentRequest.pb( + request + ) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -2829,7 +4046,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseStartAutonomousDatabase._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseStopGoldengateDeployment._get_unset_required_fields( query_params ) ) @@ -2837,7 +4054,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseStopAutonomousDatabase: + class _BaseSwitchoverAutonomousDatabase: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -2856,7 +4073,7 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "post", - "uri": "/v1/{name=projects/*/locations/*/autonomousDatabases/*}:stop", + "uri": "/v1/{name=projects/*/locations/*/autonomousDatabases/*}:switchover", "body": "*", }, ] @@ -2864,7 +4081,7 @@ def _get_http_options(): @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.StopAutonomousDatabaseRequest.pb(request) + pb_request = oracledatabase.SwitchoverAutonomousDatabaseRequest.pb(request) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -2886,7 +4103,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseStopAutonomousDatabase._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseSwitchoverAutonomousDatabase._get_unset_required_fields( query_params ) ) @@ -2894,7 +4111,7 @@ def _get_query_params_json(transcoded_request): query_params["$alt"] = "json;enum-encoding=int" return query_params - class _BaseSwitchoverAutonomousDatabase: + class _BaseTestGoldengateConnectionAssignment: def __hash__(self): # pragma: NO COVER return NotImplementedError("__hash__ must be implemented.") @@ -2913,7 +4130,7 @@ def _get_http_options(): http_options: List[Dict[str, str]] = [ { "method": "post", - "uri": "/v1/{name=projects/*/locations/*/autonomousDatabases/*}:switchover", + "uri": "/v1/{name=projects/*/locations/*/goldengateConnectionAssignments/*}:test", "body": "*", }, ] @@ -2921,7 +4138,9 @@ def _get_http_options(): @staticmethod def _get_transcoded_request(http_options, request): - pb_request = oracledatabase.SwitchoverAutonomousDatabaseRequest.pb(request) + pb_request = goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest.pb( + request + ) transcoded_request = path_template.transcode(http_options, pb_request) return transcoded_request @@ -2943,7 +4162,7 @@ def _get_query_params_json(transcoded_request): ) ) query_params.update( - _BaseOracleDatabaseRestTransport._BaseSwitchoverAutonomousDatabase._get_unset_required_fields( + _BaseOracleDatabaseRestTransport._BaseTestGoldengateConnectionAssignment._get_unset_required_fields( query_params ) ) diff --git a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/__init__.py b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/__init__.py index b77cd6f2b0a7..43350c6fc802 100644 --- a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/__init__.py +++ b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/__init__.py @@ -123,6 +123,112 @@ from .gi_version import ( GiVersion, ) +from .goldengate_connection import ( + AmazonS3IcebergStorage, + AzureDataLakeStorageIcebergStorage, + CreateGoldengateConnectionRequest, + DeleteGoldengateConnectionRequest, + GetGoldengateConnectionRequest, + GlueIcebergCatalog, + GoldengateAmazonKinesisConnectionProperties, + GoldengateAmazonRedshiftConnectionProperties, + GoldengateAmazonS3ConnectionProperties, + GoldengateAzureDataLakeStorageConnectionProperties, + GoldengateAzureSynapseAnalyticsConnectionProperties, + GoldengateConnection, + GoldengateConnectionProperties, + GoldengateDatabricksConnectionProperties, + GoldengateDb2ConnectionProperties, + GoldengateElasticsearchConnectionProperties, + GoldengateGenericConnectionProperties, + GoldengateGoldengateConnectionProperties, + GoldengateGoogleBigQueryConnectionProperties, + GoldengateGoogleCloudStorageConnectionProperties, + GoldengateGooglePubsubConnectionProperties, + GoldengateHdfsConnectionProperties, + GoldengateIcebergConnectionProperties, + GoldengateJavaMessageServiceConnectionProperties, + GoldengateKafkaConnectionProperties, + GoldengateKafkaSchemaRegistryConnectionProperties, + GoldengateMicrosoftFabricConnectionProperties, + GoldengateMicrosoftSqlserverConnectionProperties, + GoldengateMongodbConnectionProperties, + GoldengateMysqlConnectionProperties, + GoldengateOciObjectStorageConnectionProperties, + GoldengateOracleAIDataPlatformConnectionProperties, + GoldengateOracleConnectionProperties, + GoldengateOracleNosqlConnectionProperties, + GoldengatePostgresqlConnectionProperties, + GoldengateRedisConnectionProperties, + GoldengateSnowflakeConnectionProperties, + GoogleCloudStorageIcebergStorage, + IcebergCatalog, + IcebergStorage, + KafkaBootstrapServer, + ListGoldengateConnectionsRequest, + ListGoldengateConnectionsResponse, + NameValuePair, + NessieIcebergCatalog, + PolarisIcebergCatalog, + RestIcebergCatalog, +) +from .goldengate_connection_assignment import ( + CreateGoldengateConnectionAssignmentRequest, + DeleteGoldengateConnectionAssignmentRequest, + GetGoldengateConnectionAssignmentRequest, + GoldengateConnectionAssignment, + GoldengateConnectionAssignmentProperties, + ListGoldengateConnectionAssignmentsRequest, + ListGoldengateConnectionAssignmentsResponse, + TestConnectionAssignmentError, + TestGoldengateConnectionAssignmentRequest, + TestGoldengateConnectionAssignmentResponse, +) +from .goldengate_connection_type import ( + GetGoldengateConnectionTypeRequest, + GoldengateConnectionType, + ListGoldengateConnectionTypesRequest, + ListGoldengateConnectionTypesResponse, +) +from .goldengate_deployment import ( + CreateGoldengateDeploymentRequest, + DeleteGoldengateDeploymentRequest, + DeploymentDiagnosticData, + GetGoldengateDeploymentRequest, + GoldengateBackupSchedule, + GoldengateDeployment, + GoldengateDeploymentLock, + GoldengateDeploymentProperties, + GoldengateGroupToRolesMapping, + GoldengateMaintenanceConfig, + GoldengateMaintenanceWindow, + GoldengateOggDeployment, + GoldengatePlacement, + IngressIp, + ListGoldengateDeploymentsRequest, + ListGoldengateDeploymentsResponse, + StartGoldengateDeploymentRequest, + StopGoldengateDeploymentRequest, +) +from .goldengate_deployment_environment import ( + GetGoldengateDeploymentEnvironmentRequest, + GoldengateDeploymentEnvironment, + ListGoldengateDeploymentEnvironmentsRequest, + ListGoldengateDeploymentEnvironmentsResponse, +) +from .goldengate_deployment_type import ( + GetGoldengateDeploymentTypeRequest, + GoldengateDeploymentType, + ListGoldengateDeploymentTypesRequest, + ListGoldengateDeploymentTypesResponse, +) +from .goldengate_deployment_version import ( + GetGoldengateDeploymentVersionRequest, + GoldengateDeploymentVersion, + GoldengateDeploymentVersionProperties, + ListGoldengateDeploymentVersionsRequest, + ListGoldengateDeploymentVersionsResponse, +) from .location_metadata import ( LocationMetadata, ) @@ -288,6 +394,98 @@ "ListExascaleDbStorageVaultsRequest", "ListExascaleDbStorageVaultsResponse", "GiVersion", + "AmazonS3IcebergStorage", + "AzureDataLakeStorageIcebergStorage", + "CreateGoldengateConnectionRequest", + "DeleteGoldengateConnectionRequest", + "GetGoldengateConnectionRequest", + "GlueIcebergCatalog", + "GoldengateAmazonKinesisConnectionProperties", + "GoldengateAmazonRedshiftConnectionProperties", + "GoldengateAmazonS3ConnectionProperties", + "GoldengateAzureDataLakeStorageConnectionProperties", + "GoldengateAzureSynapseAnalyticsConnectionProperties", + "GoldengateConnection", + "GoldengateConnectionProperties", + "GoldengateDatabricksConnectionProperties", + "GoldengateDb2ConnectionProperties", + "GoldengateElasticsearchConnectionProperties", + "GoldengateGenericConnectionProperties", + "GoldengateGoldengateConnectionProperties", + "GoldengateGoogleBigQueryConnectionProperties", + "GoldengateGoogleCloudStorageConnectionProperties", + "GoldengateGooglePubsubConnectionProperties", + "GoldengateHdfsConnectionProperties", + "GoldengateIcebergConnectionProperties", + "GoldengateJavaMessageServiceConnectionProperties", + "GoldengateKafkaConnectionProperties", + "GoldengateKafkaSchemaRegistryConnectionProperties", + "GoldengateMicrosoftFabricConnectionProperties", + "GoldengateMicrosoftSqlserverConnectionProperties", + "GoldengateMongodbConnectionProperties", + "GoldengateMysqlConnectionProperties", + "GoldengateOciObjectStorageConnectionProperties", + "GoldengateOracleAIDataPlatformConnectionProperties", + "GoldengateOracleConnectionProperties", + "GoldengateOracleNosqlConnectionProperties", + "GoldengatePostgresqlConnectionProperties", + "GoldengateRedisConnectionProperties", + "GoldengateSnowflakeConnectionProperties", + "GoogleCloudStorageIcebergStorage", + "IcebergCatalog", + "IcebergStorage", + "KafkaBootstrapServer", + "ListGoldengateConnectionsRequest", + "ListGoldengateConnectionsResponse", + "NameValuePair", + "NessieIcebergCatalog", + "PolarisIcebergCatalog", + "RestIcebergCatalog", + "CreateGoldengateConnectionAssignmentRequest", + "DeleteGoldengateConnectionAssignmentRequest", + "GetGoldengateConnectionAssignmentRequest", + "GoldengateConnectionAssignment", + "GoldengateConnectionAssignmentProperties", + "ListGoldengateConnectionAssignmentsRequest", + "ListGoldengateConnectionAssignmentsResponse", + "TestConnectionAssignmentError", + "TestGoldengateConnectionAssignmentRequest", + "TestGoldengateConnectionAssignmentResponse", + "GetGoldengateConnectionTypeRequest", + "GoldengateConnectionType", + "ListGoldengateConnectionTypesRequest", + "ListGoldengateConnectionTypesResponse", + "CreateGoldengateDeploymentRequest", + "DeleteGoldengateDeploymentRequest", + "DeploymentDiagnosticData", + "GetGoldengateDeploymentRequest", + "GoldengateBackupSchedule", + "GoldengateDeployment", + "GoldengateDeploymentLock", + "GoldengateDeploymentProperties", + "GoldengateGroupToRolesMapping", + "GoldengateMaintenanceConfig", + "GoldengateMaintenanceWindow", + "GoldengateOggDeployment", + "GoldengatePlacement", + "IngressIp", + "ListGoldengateDeploymentsRequest", + "ListGoldengateDeploymentsResponse", + "StartGoldengateDeploymentRequest", + "StopGoldengateDeploymentRequest", + "GetGoldengateDeploymentEnvironmentRequest", + "GoldengateDeploymentEnvironment", + "ListGoldengateDeploymentEnvironmentsRequest", + "ListGoldengateDeploymentEnvironmentsResponse", + "GetGoldengateDeploymentTypeRequest", + "GoldengateDeploymentType", + "ListGoldengateDeploymentTypesRequest", + "ListGoldengateDeploymentTypesResponse", + "GetGoldengateDeploymentVersionRequest", + "GoldengateDeploymentVersion", + "GoldengateDeploymentVersionProperties", + "ListGoldengateDeploymentVersionsRequest", + "ListGoldengateDeploymentVersionsResponse", "LocationMetadata", "ListMinorVersionsRequest", "ListMinorVersionsResponse", diff --git a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/autonomous_database.py b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/autonomous_database.py index 10e8c971862a..88c288633202 100644 --- a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/autonomous_database.py +++ b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/autonomous_database.py @@ -229,22 +229,30 @@ class AutonomousDatabase(proto.Message): the following format: projects/{project}/locations/{region}/autonomousDatabases/{autonomous_database} database (str): - Optional. The name of the Autonomous - Database. The database name must be unique in - the project. The name must begin with a letter - and can contain a maximum of 30 alphanumeric - characters. + Optional. Immutable. The name of the + Autonomous Database. The database name must be + unique in the project. The name must begin with + a letter and can contain a maximum of 30 + alphanumeric characters. display_name (str): - Optional. The display name for the Autonomous - Database. The name does not have to be unique - within your project. + Optional. Immutable. The display name for the + Autonomous Database. The name does not have to + be unique within your project. entitlement_id (str): Output only. The ID of the subscription entitlement associated with the Autonomous Database. admin_password (str): - Optional. The password for the default ADMIN - user. + Optional. Immutable. The password for the default ADMIN + user. Note: Only one of ``admin_password_secret_version`` or + ``admin_password`` can be populated. + admin_password_secret_version (str): + Optional. Immutable. The resource name of a secret version + in Secret Manager which contains the database admin user's + password. Format: + projects/{project}/secrets/{secret}/versions/{version}. + Note: Only one of ``admin_password_secret_version`` or + ``admin_password`` can be populated. properties (google.cloud.oracledatabase_v1.types.AutonomousDatabaseProperties): Optional. The properties of the Autonomous Database. @@ -252,28 +260,31 @@ class AutonomousDatabase(proto.Message): Optional. The labels or tags associated with the Autonomous Database. network (str): - Optional. The name of the VPC network used by - the Autonomous Database in the following format: + Optional. Immutable. The name of the VPC + network used by the Autonomous Database in the + following format: + projects/{project}/global/networks/{network} cidr (str): - Optional. The subnet CIDR range for the - Autonomous Database. + Optional. Immutable. The subnet CIDR range + for the Autonomous Database. odb_network (str): - Optional. The name of the OdbNetwork associated with the - Autonomous Database. Format: + Optional. Immutable. The name of the OdbNetwork associated + with the Autonomous Database. Format: projects/{project}/locations/{location}/odbNetworks/{odb_network} It is optional but if specified, this should match the parent ODBNetwork of the OdbSubnet. odb_subnet (str): - Optional. The name of the OdbSubnet associated with the - Autonomous Database. Format: + Optional. Immutable. The name of the OdbSubnet associated + with the Autonomous Database. Format: projects/{project}/locations/{location}/odbNetworks/{odb_network}/odbSubnets/{odb_subnet} source_config (google.cloud.oracledatabase_v1.types.SourceConfig): - Optional. The source Autonomous Database - configuration for the standby Autonomous - Database. The source Autonomous Database is - configured while creating the Peer Autonomous - Database and can't be updated after creation. + Optional. Immutable. The source Autonomous + Database configuration for the standby + Autonomous Database. The source Autonomous + Database is configured while creating the Peer + Autonomous Database and can't be updated after + creation. peer_autonomous_databases (MutableSequence[str]): Output only. The peer Autonomous Database names of the given Autonomous Database. @@ -306,6 +317,10 @@ class AutonomousDatabase(proto.Message): proto.STRING, number=6, ) + admin_password_secret_version: str = proto.Field( + proto.STRING, + number=18, + ) properties: "AutonomousDatabaseProperties" = proto.Field( proto.MESSAGE, number=7, @@ -386,68 +401,72 @@ class AutonomousDatabaseProperties(proto.Message): Output only. OCID of the Autonomous Database. https://docs.oracle.com/en-us/iaas/Content/General/Concepts/identifiers.htm#Oracle compute_count (float): - Optional. The number of compute servers for - the Autonomous Database. + Optional. Immutable. The number of compute + servers for the Autonomous Database. cpu_core_count (int): - Optional. The number of CPU cores to be made - available to the database. + Optional. Immutable. The number of CPU cores + to be made available to the database. data_storage_size_tb (int): - Optional. The size of the data stored in the - database, in terabytes. + Optional. Immutable. The size of the data + stored in the database, in terabytes. data_storage_size_gb (int): - Optional. The size of the data stored in the - database, in gigabytes. + Optional. Immutable. The size of the data + stored in the database, in gigabytes. db_workload (google.cloud.oracledatabase_v1.types.DBWorkload): - Required. The workload type of the Autonomous - Database. + Required. Immutable. The workload type of the + Autonomous Database. db_edition (google.cloud.oracledatabase_v1.types.AutonomousDatabaseProperties.DatabaseEdition): - Optional. The edition of the Autonomous - Databases. + Optional. Immutable. The edition of the + Autonomous Databases. character_set (str): - Optional. The character set for the - Autonomous Database. The default is AL32UTF8. + Optional. Immutable. The character set for + the Autonomous Database. The default is + AL32UTF8. n_character_set (str): - Optional. The national character set for the - Autonomous Database. The default is AL16UTF16. + Optional. Immutable. The national character + set for the Autonomous Database. The default is + AL16UTF16. private_endpoint_ip (str): - Optional. The private endpoint IP address for - the Autonomous Database. + Optional. Immutable. The private endpoint IP + address for the Autonomous Database. private_endpoint_label (str): - Optional. The private endpoint label for the - Autonomous Database. + Optional. Immutable. The private endpoint + label for the Autonomous Database. db_version (str): - Optional. The Oracle Database version for the - Autonomous Database. + Optional. Immutable. The Oracle Database + version for the Autonomous Database. is_auto_scaling_enabled (bool): - Optional. This field indicates if auto - scaling is enabled for the Autonomous Database - CPU core count. + Optional. Immutable. This field indicates if + auto scaling is enabled for the Autonomous + Database CPU core count. is_storage_auto_scaling_enabled (bool): - Optional. This field indicates if auto - scaling is enabled for the Autonomous Database - storage. + Optional. Immutable. This field indicates if + auto scaling is enabled for the Autonomous + Database storage. license_type (google.cloud.oracledatabase_v1.types.AutonomousDatabaseProperties.LicenseType): - Required. The license type used for the - Autonomous Database. + Required. Immutable. The license type used + for the Autonomous Database. customer_contacts (MutableSequence[google.cloud.oracledatabase_v1.types.CustomerContact]): - Optional. The list of customer contacts. + Optional. Immutable. The list of customer + contacts. secret_id (str): - Optional. The ID of the Oracle Cloud - Infrastructure vault secret. + Optional. Immutable. The ID of the Oracle + Cloud Infrastructure vault secret. vault_id (str): - Optional. The ID of the Oracle Cloud - Infrastructure vault. + Optional. Immutable. The ID of the Oracle + Cloud Infrastructure vault. maintenance_schedule_type (google.cloud.oracledatabase_v1.types.AutonomousDatabaseProperties.MaintenanceScheduleType): - Optional. The maintenance schedule of the - Autonomous Database. + Optional. Immutable. The maintenance schedule + of the Autonomous Database. mtls_connection_required (bool): - Optional. This field specifies if the - Autonomous Database requires mTLS connections. + Optional. Immutable. This field specifies if + the Autonomous Database requires mTLS + connections. backup_retention_period_days (int): - Optional. The retention period for the - Autonomous Database. This field is specified in - days, can range from 1 day to 60 days, and has a - default value of 60 days. + Optional. Immutable. The retention period for + the Autonomous Database. This field is specified + in days, can range from 1 day to 60 days, and + has a default value of 60 days. actual_used_data_storage_size_tb (float): Output only. The amount of storage currently being used for user and system data, in @@ -501,13 +520,15 @@ class AutonomousDatabaseProperties(proto.Message): Output only. The memory assigned to in-memory tables in an Autonomous Database. is_local_data_guard_enabled (bool): - Output only. This field indicates whether the - Autonomous Database has local (in-region) Data + Output only. Deprecated: Please use + ``local_data_guard_enabled`` instead. This field indicates + whether the Autonomous Database has local (in-region) Data Guard enabled. local_adg_auto_failover_max_data_loss_limit (int): - Output only. This field indicates the maximum - data loss limit for an Autonomous Database, in - seconds. + Output only. Deprecated: Please use + ``local_adg_auto_failover_max_data_loss_limit_duration`` + instead. This field indicates the maximum data loss limit + for an Autonomous Database, in seconds. local_standby_db (google.cloud.oracledatabase_v1.types.AutonomousDatabaseStandbySummary): Output only. The details of the Autonomous Data Guard standby database. @@ -588,8 +609,8 @@ class AutonomousDatabaseProperties(proto.Message): Output only. The date and time when maintenance will end. allowlisted_ips (MutableSequence[str]): - Optional. The list of allowlisted IP - addresses for the Autonomous Database. + Optional. Immutable. The list of allowlisted + IP addresses for the Autonomous Database. encryption_key (google.cloud.oracledatabase_v1.types.EncryptionKey): Optional. The encryption key used to encrypt the Autonomous Database. Updating this field will add a new entry in the @@ -603,6 +624,19 @@ class AutonomousDatabaseProperties(proto.Message): service account on which customers can grant roles to access resources in the customer project. + local_data_guard_enabled (bool): + Optional. Indicates whether the Autonomous + Database has a local (in-region) standby + database. Not applicable to cross-region Data + Guard or dedicated Exadata infrastructure. + + This field is a member of `oneof`_ ``_local_data_guard_enabled``. + local_adg_auto_failover_max_data_loss_limit_duration (int): + Optional. This field indicates the maximum + data loss limit for an Autonomous Database, in + seconds. + + This field is a member of `oneof`_ ``_local_adg_auto_failover_max_data_loss_limit_duration``. """ class DatabaseEdition(proto.Enum): @@ -668,11 +702,14 @@ class LocalDisasterRecoveryType(proto.Enum): Autonomous Data Guard recovery. BACKUP_BASED (2): Backup based recovery. + NOT_AVAILABLE (3): + Local disaster recovery is not available. """ LOCAL_DISASTER_RECOVERY_TYPE_UNSPECIFIED = 0 ADG = 1 BACKUP_BASED = 2 + NOT_AVAILABLE = 3 class DataSafeState(proto.Enum): r"""Varies states of the Data Safe registration for the @@ -1108,6 +1145,16 @@ class Role(proto.Enum): proto.STRING, number=70, ) + local_data_guard_enabled: bool = proto.Field( + proto.BOOL, + number=71, + optional=True, + ) + local_adg_auto_failover_max_data_loss_limit_duration: int = proto.Field( + proto.INT32, + number=72, + optional=True, + ) class EncryptionKeyHistoryEntry(proto.Message): diff --git a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/database.py b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/database.py index e44f36142087..613969432b3e 100644 --- a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/database.py +++ b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/database.py @@ -55,11 +55,27 @@ class Database(proto.Message): Optional. The DB_UNIQUE_NAME of the Oracle Database being backed up. admin_password (str): - Required. The password for the default ADMIN - user. + Optional. The password for the default ADMIN user. Note: + Only one of ``admin_password_secret_version`` or + ``admin_password`` can be populated. + admin_password_secret_version (str): + Optional. The resource name of a secret version in Secret + Manager which contains the database admin user's password. + Format: + projects/{project}/secrets/{secret}/versions/{version}. + Note: Only one of ``admin_password_secret_version`` or + ``admin_password`` can be populated. tde_wallet_password (str): - Optional. The TDE wallet password for the - database. + Optional. The TDE wallet password for the database. Note: + Only one of ``tde_wallet_password_secret_version`` or + ``tde_wallet_password`` can be populated. + tde_wallet_password_secret_version (str): + Optional. The resource name of a secret version in Secret + Manager which contains the TDE wallet password for the + database. Format: + projects/{project}/secrets/{secret}/versions/{version}. + Note: Only one of ``tde_wallet_password_secret_version`` or + ``tde_wallet_password`` can be populated. character_set (str): Optional. The character set for the database. The default is AL32UTF8. @@ -85,6 +101,15 @@ class Database(proto.Message): ops_insights_status (google.cloud.oracledatabase_v1.types.Database.OperationsInsightsStatus): Output only. The Status of Operations Insights for this Database. + pluggable_database_id (str): + Optional. The ID of the pluggable database + associated with the Database. The ID must be + unique within the project and location. + pluggable_database_name (str): + Optional. The pluggable database associated + with the Database. The name must begin with an + alphabetic character and can contain a maximum + of thirty alphanumeric characters. """ class OperationsInsightsStatus(proto.Enum): @@ -137,10 +162,18 @@ class OperationsInsightsStatus(proto.Enum): proto.STRING, number=4, ) + admin_password_secret_version: str = proto.Field( + proto.STRING, + number=17, + ) tde_wallet_password: str = proto.Field( proto.STRING, number=5, ) + tde_wallet_password_secret_version: str = proto.Field( + proto.STRING, + number=18, + ) character_set: str = proto.Field( proto.STRING, number=6, @@ -180,6 +213,14 @@ class OperationsInsightsStatus(proto.Enum): number=14, enum=OperationsInsightsStatus, ) + pluggable_database_id: str = proto.Field( + proto.STRING, + number=15, + ) + pluggable_database_name: str = proto.Field( + proto.STRING, + number=16, + ) class DatabaseProperties(proto.Message): diff --git a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/db_system.py b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/db_system.py index f6d8e28caa96..3b2f64da9edc 100644 --- a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/db_system.py +++ b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/db_system.py @@ -418,7 +418,8 @@ class StorageManagement(proto.Enum): STORAGE_MANAGEMENT_UNSPECIFIED (0): The storage management is unspecified. ASM (1): - Automatic storage management. + Automatic storage management. This option is + not supported. Only LVM is supported. LVM (2): Logical Volume management. """ @@ -630,6 +631,10 @@ class ListDbSystemsResponse(proto.Message): next_page_token (str): A token identifying a page of results the server should return. + unreachable (MutableSequence[str]): + Unreachable locations when listing resources + across all locations using wildcard location + '-'. """ @property @@ -645,6 +650,10 @@ def raw_page(self): proto.STRING, number=2, ) + unreachable: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=3, + ) __all__ = tuple(sorted(__protobuf__.manifest)) diff --git a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/exascale_db_storage_vault.py b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/exascale_db_storage_vault.py index 9b541e025f23..653a53faabf5 100644 --- a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/exascale_db_storage_vault.py +++ b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/exascale_db_storage_vault.py @@ -346,6 +346,10 @@ class ListExascaleDbStorageVaultsResponse(proto.Message): token can be provided to a subsequent ListExascaleDbStorageVaults call to list the next page. If empty, there are no more pages. + unreachable (MutableSequence[str]): + Unreachable locations when listing resources + across all locations using wildcard location + '-'. """ @property @@ -363,6 +367,10 @@ def raw_page(self): proto.STRING, number=2, ) + unreachable: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=3, + ) class CreateExascaleDbStorageVaultRequest(proto.Message): diff --git a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_connection.py b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_connection.py new file mode 100644 index 000000000000..1edfde9df848 --- /dev/null +++ b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_connection.py @@ -0,0 +1,4128 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +from __future__ import annotations + +from typing import MutableMapping, MutableSequence + +import google.protobuf.timestamp_pb2 as timestamp_pb2 # type: ignore +import proto # type: ignore + +__protobuf__ = proto.module( + package="google.cloud.oracledatabase.v1", + manifest={ + "GoldengateConnection", + "GoldengateConnectionProperties", + "GoldengateOracleConnectionProperties", + "GoldengateGoldengateConnectionProperties", + "GoldengateGenericConnectionProperties", + "GoldengateGoogleCloudStorageConnectionProperties", + "GoldengateGoogleBigQueryConnectionProperties", + "GoldengateMysqlConnectionProperties", + "GoldengateKafkaConnectionProperties", + "GoldengateKafkaSchemaRegistryConnectionProperties", + "GoldengateOciObjectStorageConnectionProperties", + "GoldengateAzureDataLakeStorageConnectionProperties", + "GoldengateAzureSynapseAnalyticsConnectionProperties", + "GoldengatePostgresqlConnectionProperties", + "GoldengateMicrosoftSqlserverConnectionProperties", + "GoldengateAmazonS3ConnectionProperties", + "GoldengateHdfsConnectionProperties", + "GoldengateJavaMessageServiceConnectionProperties", + "GoldengateMongodbConnectionProperties", + "GoldengateOracleNosqlConnectionProperties", + "GoldengateSnowflakeConnectionProperties", + "GoldengateAmazonRedshiftConnectionProperties", + "GoldengateElasticsearchConnectionProperties", + "GoldengateAmazonKinesisConnectionProperties", + "GoldengateDb2ConnectionProperties", + "GoldengateRedisConnectionProperties", + "GoldengateDatabricksConnectionProperties", + "GoldengateGooglePubsubConnectionProperties", + "GoldengateMicrosoftFabricConnectionProperties", + "GoldengateOracleAIDataPlatformConnectionProperties", + "GlueIcebergCatalog", + "NessieIcebergCatalog", + "PolarisIcebergCatalog", + "RestIcebergCatalog", + "IcebergCatalog", + "AmazonS3IcebergStorage", + "GoogleCloudStorageIcebergStorage", + "AzureDataLakeStorageIcebergStorage", + "IcebergStorage", + "GoldengateIcebergConnectionProperties", + "CreateGoldengateConnectionRequest", + "DeleteGoldengateConnectionRequest", + "GetGoldengateConnectionRequest", + "ListGoldengateConnectionsRequest", + "ListGoldengateConnectionsResponse", + "NameValuePair", + "KafkaBootstrapServer", + }, +) + + +class GoldengateConnection(proto.Message): + r"""Details of the GoldengateConnection resource. + + Attributes: + name (str): + Identifier. The name of the GoldengateConnection resource in + the following format: + projects/{project}/locations/{region}/goldengateConnections/{goldengate_connection} + properties (google.cloud.oracledatabase_v1.types.GoldengateConnectionProperties): + Required. The properties of the + GoldengateConnection. + gcp_oracle_zone (str): + Optional. The GCP Oracle zone where Oracle + GoldengateConnection is hosted. Example: + us-east4-b-r2. If not specified, the system will + pick a zone based on availability. + labels (MutableMapping[str, str]): + Optional. The labels or tags associated with + the GoldengateConnection. + odb_network (str): + Optional. The name of the OdbNetwork associated with the + GoldengateConnection. The format is + projects/{project}/locations/{location}/odbNetworks/{odb_network}. + It is optional but if specified, this should match the + parent ODBNetwork of the OdbSubnet. + odb_subnet (str): + Optional. The name of the OdbSubnet associated with the + GoldengateConnection for IP allocation. Format: + projects/{project}/locations/{location}/odbNetworks/{odb_network}/odbSubnets/{odb_subnet} + entitlement_id (str): + Output only. The ID of the subscription + entitlement associated with the + GoldengateConnection. + create_time (google.protobuf.timestamp_pb2.Timestamp): + Output only. The date and time that the + GoldengateConnection was created. + oci_url (str): + Output only. HTTPS link to OCI resources + exposed to Customer via UI Interface. + """ + + name: str = proto.Field( + proto.STRING, + number=1, + ) + properties: "GoldengateConnectionProperties" = proto.Field( + proto.MESSAGE, + number=2, + message="GoldengateConnectionProperties", + ) + gcp_oracle_zone: str = proto.Field( + proto.STRING, + number=3, + ) + labels: MutableMapping[str, str] = proto.MapField( + proto.STRING, + proto.STRING, + number=4, + ) + odb_network: str = proto.Field( + proto.STRING, + number=5, + ) + odb_subnet: str = proto.Field( + proto.STRING, + number=6, + ) + entitlement_id: str = proto.Field( + proto.STRING, + number=7, + ) + create_time: timestamp_pb2.Timestamp = proto.Field( + proto.MESSAGE, + number=8, + message=timestamp_pb2.Timestamp, + ) + oci_url: str = proto.Field( + proto.STRING, + number=9, + ) + + +class GoldengateConnectionProperties(proto.Message): + r"""The properties of a GoldengateConnection. + + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + + Attributes: + oracle_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateOracleConnectionProperties): + Properties for an Oracle Database Connection. + + This field is a member of `oneof`_ ``connection_details``. + goldengate_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateGoldengateConnectionProperties): + Properties for a Goldengate Connection. + + This field is a member of `oneof`_ ``connection_details``. + generic_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateGenericConnectionProperties): + Properties for a Generic Connection. + + This field is a member of `oneof`_ ``connection_details``. + google_cloud_storage_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateGoogleCloudStorageConnectionProperties): + Properties for a Google Cloud Storage + Connection. + + This field is a member of `oneof`_ ``connection_details``. + google_big_query_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateGoogleBigQueryConnectionProperties): + Properties for a Google BigQuery Connection. + + This field is a member of `oneof`_ ``connection_details``. + mysql_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateMysqlConnectionProperties): + Properties for a Mysql Connection. + + This field is a member of `oneof`_ ``connection_details``. + kafka_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateKafkaConnectionProperties): + Properties for a Kafka Connection. + + This field is a member of `oneof`_ ``connection_details``. + kafka_schema_registry_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateKafkaSchemaRegistryConnectionProperties): + Properties for a Kafka Schema Registry + Connection. + + This field is a member of `oneof`_ ``connection_details``. + oci_object_storage_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateOciObjectStorageConnectionProperties): + Properties for an OCI Object Storage + Connection. + + This field is a member of `oneof`_ ``connection_details``. + azure_data_lake_storage_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateAzureDataLakeStorageConnectionProperties): + Properties for an Azure Data Lake Storage + Connection. + + This field is a member of `oneof`_ ``connection_details``. + azure_synapse_analytics_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateAzureSynapseAnalyticsConnectionProperties): + Properties for an Azure Synapse Analytics + connection. + + This field is a member of `oneof`_ ``connection_details``. + postgresql_connection_properties (google.cloud.oracledatabase_v1.types.GoldengatePostgresqlConnectionProperties): + Properties for a PostgreSQL connection. + + This field is a member of `oneof`_ ``connection_details``. + microsoft_sqlserver_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateMicrosoftSqlserverConnectionProperties): + Properties for a Microsoft SQL Server + connection. + + This field is a member of `oneof`_ ``connection_details``. + amazon_s3_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateAmazonS3ConnectionProperties): + Properties for an Amazon S3 connection. + + This field is a member of `oneof`_ ``connection_details``. + hdfs_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateHdfsConnectionProperties): + Properties for an HDFS connection. + + This field is a member of `oneof`_ ``connection_details``. + java_message_service_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateJavaMessageServiceConnectionProperties): + Properties for a Java Message Service + connection. + + This field is a member of `oneof`_ ``connection_details``. + mongodb_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateMongodbConnectionProperties): + Properties for a MongoDB connection. + + This field is a member of `oneof`_ ``connection_details``. + oracle_nosql_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateOracleNosqlConnectionProperties): + Properties for an Oracle NoSQL connection. + + This field is a member of `oneof`_ ``connection_details``. + snowflake_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateSnowflakeConnectionProperties): + Properties for a Snowflake connection. + + This field is a member of `oneof`_ ``connection_details``. + amazon_redshift_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateAmazonRedshiftConnectionProperties): + Properties for an Amazon Redshift connection. + + This field is a member of `oneof`_ ``connection_details``. + elasticsearch_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateElasticsearchConnectionProperties): + Properties for an Elasticsearch connection. + + This field is a member of `oneof`_ ``connection_details``. + amazon_kinesis_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateAmazonKinesisConnectionProperties): + Properties for an Amazon Kinesis connection. + + This field is a member of `oneof`_ ``connection_details``. + db2_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateDb2ConnectionProperties): + Properties for a DB2 connection. + + This field is a member of `oneof`_ ``connection_details``. + redis_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateRedisConnectionProperties): + Properties for a Redis connection. + + This field is a member of `oneof`_ ``connection_details``. + databricks_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateDatabricksConnectionProperties): + Properties for a Databricks connection. + + This field is a member of `oneof`_ ``connection_details``. + google_pubsub_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateGooglePubsubConnectionProperties): + Properties for a Google Pub/Sub connection. + + This field is a member of `oneof`_ ``connection_details``. + microsoft_fabric_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateMicrosoftFabricConnectionProperties): + Properties for a Microsoft Fabric connection. + + This field is a member of `oneof`_ ``connection_details``. + oracle_ai_data_platform_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateOracleAIDataPlatformConnectionProperties): + Properties for an Oracle AI Data Platform + connection. + + This field is a member of `oneof`_ ``connection_details``. + iceberg_connection_properties (google.cloud.oracledatabase_v1.types.GoldengateIcebergConnectionProperties): + Properties for an Iceberg connection. + + This field is a member of `oneof`_ ``connection_details``. + connection_type (google.cloud.oracledatabase_v1.types.GoldengateConnectionProperties.GoldengateConnectionType): + Required. The connection type. + ocid (str): + Output only. The [OCID] of the connection being referenced. + display_name (str): + Required. An object's Display Name. + description (str): + Optional. Metadata about this specific + object. + lifecycle_state (google.cloud.oracledatabase_v1.types.GoldengateConnectionProperties.GoldengateConnectionLifecycleState): + Output only. The lifecycle state of the + connection. + lifecycle_details (str): + Output only. Describes the object's current + state in detail. For example, it can be used to + provide actionable information for a resource in + a Failed state. + update_time (google.protobuf.timestamp_pb2.Timestamp): + Output only. The time the resource was last + updated. + routing_method (google.cloud.oracledatabase_v1.types.GoldengateConnectionProperties.GoldengateConnectionRoutingMethod): + Optional. The routing method for the + GoldengateConnection. + ingress_ip_addresses (MutableSequence[str]): + Output only. The Ingress IPs of the + GoldengateConnection. + """ + + class GoldengateConnectionType(proto.Enum): + r"""Enum for Connection type. + + Values: + GOLDENGATE_CONNECTION_TYPE_UNSPECIFIED (0): + Connection type unspecified. + GOLDENGATE (1): + Goldengate connection type. + KAFKA (2): + Kafka connection type. + KAFKA_SCHEMA_REGISTRY (3): + Kafka schema registry connection type. + MYSQL (4): + MySQL connection type. + JAVA_MESSAGE_SERVICE (5): + Java message service connection type. + MICROSOFT_SQLSERVER (6): + Microsoft SQL Server connection type. + OCI_OBJECT_STORAGE (7): + OCI object storage connection type. + ORACLE (8): + Oracle connection type. + AZURE_DATA_LAKE_STORAGE (9): + Azure data lake storage connection type. + POSTGRESQL (10): + PostgreSQL connection type. + AZURE_SYNAPSE_ANALYTICS (11): + Azure synapse analytics connection type. + SNOWFLAKE (12): + Snowflake connection type. + AMAZON_S3 (13): + Amazon S3 connection type. + HDFS (14): + HDFS connection type. + ORACLE_AI_DATA_PLATFORM (15): + Oracle AI data platform connection type. + ORACLE_NOSQL (16): + Oracle NoSQL connection type. + MONGODB (17): + MongoDB connection type. + AMAZON_KINESIS (18): + Amazon Kinesis connection type. + AMAZON_REDSHIFT (19): + Amazon Redshift connection type. + DB2 (20): + DB2 connection type. + REDIS (21): + Redis connection type. + ELASTICSEARCH (22): + Elasticsearch connection type. + GENERIC (23): + Generic connection type. + GOOGLE_CLOUD_STORAGE (24): + Google Cloud Storage connection type. + GOOGLE_BIGQUERY (25): + Google BigQuery connection type. + DATABRICKS (26): + Databricks connection type. + GOOGLE_PUBSUB (27): + Google Pub/Sub connection type. + MICROSOFT_FABRIC (28): + Microsoft Fabric connection type. + ICEBERG (29): + Iceberg connection type. + """ + + GOLDENGATE_CONNECTION_TYPE_UNSPECIFIED = 0 + GOLDENGATE = 1 + KAFKA = 2 + KAFKA_SCHEMA_REGISTRY = 3 + MYSQL = 4 + JAVA_MESSAGE_SERVICE = 5 + MICROSOFT_SQLSERVER = 6 + OCI_OBJECT_STORAGE = 7 + ORACLE = 8 + AZURE_DATA_LAKE_STORAGE = 9 + POSTGRESQL = 10 + AZURE_SYNAPSE_ANALYTICS = 11 + SNOWFLAKE = 12 + AMAZON_S3 = 13 + HDFS = 14 + ORACLE_AI_DATA_PLATFORM = 15 + ORACLE_NOSQL = 16 + MONGODB = 17 + AMAZON_KINESIS = 18 + AMAZON_REDSHIFT = 19 + DB2 = 20 + REDIS = 21 + ELASTICSEARCH = 22 + GENERIC = 23 + GOOGLE_CLOUD_STORAGE = 24 + GOOGLE_BIGQUERY = 25 + DATABRICKS = 26 + GOOGLE_PUBSUB = 27 + MICROSOFT_FABRIC = 28 + ICEBERG = 29 + + class GoldengateConnectionLifecycleState(proto.Enum): + r"""Possible lifecycle states for connection. + + Values: + GOLDENGATE_CONNECTION_LIFECYCLE_STATE_UNSPECIFIED (0): + Default unspecified value. + CREATING (1): + Indicates that the resource is in + provisioning state. + ACTIVE (2): + Indicates that the resource is in active + state. + UPDATING (3): + Indicates that the resource is in updating + state. + DELETING (4): + Indicates that the resource is in deleting + state. + DELETED (5): + Indicates that the resource is in deleted + state. + FAILED (6): + Indicates that the resource is in failed + state. + """ + + GOLDENGATE_CONNECTION_LIFECYCLE_STATE_UNSPECIFIED = 0 + CREATING = 1 + ACTIVE = 2 + UPDATING = 3 + DELETING = 4 + DELETED = 5 + FAILED = 6 + + class GoldengateConnectionRoutingMethod(proto.Enum): + r"""The various routing methods of the GoldengateConnection. + + Values: + GOLDENGATE_CONNECTION_ROUTING_METHOD_UNSPECIFIED (0): + Default unspecified value. + SHARED_DEPLOYMENT_ENDPOINT (1): + Network traffic flows from the assigned + deployment's private endpoint through the + deployment's subnet. + DEDICATED_ENDPOINT (2): + A dedicated private endpoint is created in + the target VCN subnet for the connection. + """ + + GOLDENGATE_CONNECTION_ROUTING_METHOD_UNSPECIFIED = 0 + SHARED_DEPLOYMENT_ENDPOINT = 1 + DEDICATED_ENDPOINT = 2 + + oracle_connection_properties: "GoldengateOracleConnectionProperties" = proto.Field( + proto.MESSAGE, + number=9, + oneof="connection_details", + message="GoldengateOracleConnectionProperties", + ) + goldengate_connection_properties: "GoldengateGoldengateConnectionProperties" = ( + proto.Field( + proto.MESSAGE, + number=10, + oneof="connection_details", + message="GoldengateGoldengateConnectionProperties", + ) + ) + generic_connection_properties: "GoldengateGenericConnectionProperties" = ( + proto.Field( + proto.MESSAGE, + number=11, + oneof="connection_details", + message="GoldengateGenericConnectionProperties", + ) + ) + google_cloud_storage_connection_properties: "GoldengateGoogleCloudStorageConnectionProperties" = proto.Field( + proto.MESSAGE, + number=12, + oneof="connection_details", + message="GoldengateGoogleCloudStorageConnectionProperties", + ) + google_big_query_connection_properties: "GoldengateGoogleBigQueryConnectionProperties" = proto.Field( + proto.MESSAGE, + number=13, + oneof="connection_details", + message="GoldengateGoogleBigQueryConnectionProperties", + ) + mysql_connection_properties: "GoldengateMysqlConnectionProperties" = proto.Field( + proto.MESSAGE, + number=14, + oneof="connection_details", + message="GoldengateMysqlConnectionProperties", + ) + kafka_connection_properties: "GoldengateKafkaConnectionProperties" = proto.Field( + proto.MESSAGE, + number=15, + oneof="connection_details", + message="GoldengateKafkaConnectionProperties", + ) + kafka_schema_registry_connection_properties: "GoldengateKafkaSchemaRegistryConnectionProperties" = proto.Field( + proto.MESSAGE, + number=16, + oneof="connection_details", + message="GoldengateKafkaSchemaRegistryConnectionProperties", + ) + oci_object_storage_connection_properties: "GoldengateOciObjectStorageConnectionProperties" = proto.Field( + proto.MESSAGE, + number=17, + oneof="connection_details", + message="GoldengateOciObjectStorageConnectionProperties", + ) + azure_data_lake_storage_connection_properties: "GoldengateAzureDataLakeStorageConnectionProperties" = proto.Field( + proto.MESSAGE, + number=18, + oneof="connection_details", + message="GoldengateAzureDataLakeStorageConnectionProperties", + ) + azure_synapse_analytics_connection_properties: "GoldengateAzureSynapseAnalyticsConnectionProperties" = proto.Field( + proto.MESSAGE, + number=19, + oneof="connection_details", + message="GoldengateAzureSynapseAnalyticsConnectionProperties", + ) + postgresql_connection_properties: "GoldengatePostgresqlConnectionProperties" = ( + proto.Field( + proto.MESSAGE, + number=20, + oneof="connection_details", + message="GoldengatePostgresqlConnectionProperties", + ) + ) + microsoft_sqlserver_connection_properties: "GoldengateMicrosoftSqlserverConnectionProperties" = proto.Field( + proto.MESSAGE, + number=21, + oneof="connection_details", + message="GoldengateMicrosoftSqlserverConnectionProperties", + ) + amazon_s3_connection_properties: "GoldengateAmazonS3ConnectionProperties" = ( + proto.Field( + proto.MESSAGE, + number=22, + oneof="connection_details", + message="GoldengateAmazonS3ConnectionProperties", + ) + ) + hdfs_connection_properties: "GoldengateHdfsConnectionProperties" = proto.Field( + proto.MESSAGE, + number=23, + oneof="connection_details", + message="GoldengateHdfsConnectionProperties", + ) + java_message_service_connection_properties: "GoldengateJavaMessageServiceConnectionProperties" = proto.Field( + proto.MESSAGE, + number=24, + oneof="connection_details", + message="GoldengateJavaMessageServiceConnectionProperties", + ) + mongodb_connection_properties: "GoldengateMongodbConnectionProperties" = ( + proto.Field( + proto.MESSAGE, + number=25, + oneof="connection_details", + message="GoldengateMongodbConnectionProperties", + ) + ) + oracle_nosql_connection_properties: "GoldengateOracleNosqlConnectionProperties" = ( + proto.Field( + proto.MESSAGE, + number=26, + oneof="connection_details", + message="GoldengateOracleNosqlConnectionProperties", + ) + ) + snowflake_connection_properties: "GoldengateSnowflakeConnectionProperties" = ( + proto.Field( + proto.MESSAGE, + number=27, + oneof="connection_details", + message="GoldengateSnowflakeConnectionProperties", + ) + ) + amazon_redshift_connection_properties: "GoldengateAmazonRedshiftConnectionProperties" = proto.Field( + proto.MESSAGE, + number=28, + oneof="connection_details", + message="GoldengateAmazonRedshiftConnectionProperties", + ) + elasticsearch_connection_properties: "GoldengateElasticsearchConnectionProperties" = proto.Field( + proto.MESSAGE, + number=29, + oneof="connection_details", + message="GoldengateElasticsearchConnectionProperties", + ) + amazon_kinesis_connection_properties: "GoldengateAmazonKinesisConnectionProperties" = proto.Field( + proto.MESSAGE, + number=31, + oneof="connection_details", + message="GoldengateAmazonKinesisConnectionProperties", + ) + db2_connection_properties: "GoldengateDb2ConnectionProperties" = proto.Field( + proto.MESSAGE, + number=32, + oneof="connection_details", + message="GoldengateDb2ConnectionProperties", + ) + redis_connection_properties: "GoldengateRedisConnectionProperties" = proto.Field( + proto.MESSAGE, + number=33, + oneof="connection_details", + message="GoldengateRedisConnectionProperties", + ) + databricks_connection_properties: "GoldengateDatabricksConnectionProperties" = ( + proto.Field( + proto.MESSAGE, + number=34, + oneof="connection_details", + message="GoldengateDatabricksConnectionProperties", + ) + ) + google_pubsub_connection_properties: "GoldengateGooglePubsubConnectionProperties" = proto.Field( + proto.MESSAGE, + number=35, + oneof="connection_details", + message="GoldengateGooglePubsubConnectionProperties", + ) + microsoft_fabric_connection_properties: "GoldengateMicrosoftFabricConnectionProperties" = proto.Field( + proto.MESSAGE, + number=36, + oneof="connection_details", + message="GoldengateMicrosoftFabricConnectionProperties", + ) + oracle_ai_data_platform_connection_properties: "GoldengateOracleAIDataPlatformConnectionProperties" = proto.Field( + proto.MESSAGE, + number=37, + oneof="connection_details", + message="GoldengateOracleAIDataPlatformConnectionProperties", + ) + iceberg_connection_properties: "GoldengateIcebergConnectionProperties" = ( + proto.Field( + proto.MESSAGE, + number=38, + oneof="connection_details", + message="GoldengateIcebergConnectionProperties", + ) + ) + connection_type: GoldengateConnectionType = proto.Field( + proto.ENUM, + number=1, + enum=GoldengateConnectionType, + ) + ocid: str = proto.Field( + proto.STRING, + number=2, + ) + display_name: str = proto.Field( + proto.STRING, + number=3, + ) + description: str = proto.Field( + proto.STRING, + number=4, + ) + lifecycle_state: GoldengateConnectionLifecycleState = proto.Field( + proto.ENUM, + number=5, + enum=GoldengateConnectionLifecycleState, + ) + lifecycle_details: str = proto.Field( + proto.STRING, + number=6, + ) + update_time: timestamp_pb2.Timestamp = proto.Field( + proto.MESSAGE, + number=7, + message=timestamp_pb2.Timestamp, + ) + routing_method: GoldengateConnectionRoutingMethod = proto.Field( + proto.ENUM, + number=8, + enum=GoldengateConnectionRoutingMethod, + ) + ingress_ip_addresses: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=39, + ) + + +class GoldengateOracleConnectionProperties(proto.Message): + r"""The properties of Goldengate Oracle Database Connection. + + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + + Attributes: + password (str): + Optional. Input only. The password Oracle + Goldengate uses in plain text. + + This field is a member of `oneof`_ ``connection_password_options``. + password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the password Oracle Goldengate uses. Format: + + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``connection_password_options``. + technology_type (str): + Optional. The technology type. + username (str): + Optional. The username Oracle Goldengate uses + to connect. + authentication_mode (google.cloud.oracledatabase_v1.types.GoldengateOracleConnectionProperties.OracleAuthenticationMode): + Optional. Authentication mode. + connection_string (str): + Optional. Connect descriptor or Easy Connect + Naming method used to connect to a database. + session_mode (google.cloud.oracledatabase_v1.types.GoldengateOracleConnectionProperties.SessionMode): + Optional. The mode of the database connection + session to be established by the data client. + gcp_oracle_database_id (str): + Optional. Autonomous AI Database instance id of database in + Oracle Database @ Google Cloud. If gcp_oracle_database_id is + provided, connection_string must be empty. Format: + projects/{project}/locations/{location}/autonomousDatabases/{autonomous_database} + wallet_file (str): + Optional. The wallet contents Oracle + Goldengate uses to make connections to a + database. This attribute is expected to be + base64 encoded. + """ + + class OracleAuthenticationMode(proto.Enum): + r"""Enum for Authentication mode. + + Values: + ORACLE_AUTHENTICATION_MODE_UNSPECIFIED (0): + Authentication mode not specified. + TLS (1): + TLS authentication mode. + MTLS (2): + MTLS authentication mode. + """ + + ORACLE_AUTHENTICATION_MODE_UNSPECIFIED = 0 + TLS = 1 + MTLS = 2 + + class SessionMode(proto.Enum): + r"""The various session modes of the GoldengateConnection. + + Values: + SESSION_MODE_UNSPECIFIED (0): + Default unspecified value. + DIRECT (1): + Indicates that the resource is using direct + session mode. + REDIRECT (2): + Indicates that the resource is using redirect + session mode. + """ + + SESSION_MODE_UNSPECIFIED = 0 + DIRECT = 1 + REDIRECT = 2 + + password: str = proto.Field( + proto.STRING, + number=10, + oneof="connection_password_options", + ) + password_secret_version: str = proto.Field( + proto.STRING, + number=11, + oneof="connection_password_options", + ) + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + username: str = proto.Field( + proto.STRING, + number=2, + ) + authentication_mode: OracleAuthenticationMode = proto.Field( + proto.ENUM, + number=3, + enum=OracleAuthenticationMode, + ) + connection_string: str = proto.Field( + proto.STRING, + number=4, + ) + session_mode: SessionMode = proto.Field( + proto.ENUM, + number=5, + enum=SessionMode, + ) + gcp_oracle_database_id: str = proto.Field( + proto.STRING, + number=6, + ) + wallet_file: str = proto.Field( + proto.STRING, + number=9, + ) + + +class GoldengateGoldengateConnectionProperties(proto.Message): + r"""The properties of GoldengateGoldengateConnectionProperties. + + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + + Attributes: + password (str): + Optional. Input only. The password used to + connect to the Oracle Goldengate in plain text. + + This field is a member of `oneof`_ ``connection_password_options``. + password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the password used to connect to the Oracle + Goldengate. Format: + + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``connection_password_options``. + technology_type (str): + Optional. The technology type. + goldengate_deployment_id (str): + Optional. The name of the GoldengateDeployment associated + with the GoldengateConnection. Format: + projects/{project}/locations/{location}/goldengateDeployments/{goldengate_deployment} + host (str): + Optional. The host of the + GoldengateConnection. + port (int): + Optional. The port of the + GoldengateConnection. + username (str): + Optional. The username credential. + """ + + password: str = proto.Field( + proto.STRING, + number=7, + oneof="connection_password_options", + ) + password_secret_version: str = proto.Field( + proto.STRING, + number=8, + oneof="connection_password_options", + ) + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + goldengate_deployment_id: str = proto.Field( + proto.STRING, + number=2, + ) + host: str = proto.Field( + proto.STRING, + number=3, + ) + port: int = proto.Field( + proto.INT32, + number=4, + ) + username: str = proto.Field( + proto.STRING, + number=5, + ) + + +class GoldengateGenericConnectionProperties(proto.Message): + r"""The properties of GoldengateGenericConnectionProperties. + + Attributes: + technology_type (str): + Optional. The technology type. + host (str): + Optional. The host of the GenericConnection. + """ + + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + host: str = proto.Field( + proto.STRING, + number=2, + ) + + +class GoldengateGoogleCloudStorageConnectionProperties(proto.Message): + r"""The properties of + GoldengateGoogleCloudStorageConnectionProperties. + + Attributes: + technology_type (str): + Optional. The technology type. + service_account_key_file (str): + Optional. The base64 encoded content of the + service account key file containing the + credentials required to use Google Cloud + Storage. + """ + + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + service_account_key_file: str = proto.Field( + proto.STRING, + number=3, + ) + + +class GoldengateGoogleBigQueryConnectionProperties(proto.Message): + r"""The properties of + GoldengateGoogleBigQueryConnectionProperties. + + Attributes: + technology_type (str): + Optional. The technology type. + service_account_key_file (str): + Optional. The base64 encoded content of the + service account key file containing the + credentials required to use Google BigQuery. + """ + + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + service_account_key_file: str = proto.Field( + proto.STRING, + number=3, + ) + + +class GoldengateMysqlConnectionProperties(proto.Message): + r"""Properties of GoldengateMysqlConnection. + + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + + Attributes: + password (str): + Optional. Input only. The password Oracle + Goldengate uses to connect to MySQL in plain + text. + + This field is a member of `oneof`_ ``connection_password_options``. + password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the password Oracle Goldengate uses to connect + to MySQL. Format: + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``connection_password_options``. + technology_type (str): + Optional. The technology type of + MysqlConnection. + username (str): + Optional. The username Oracle Goldengate uses + to connect the associated system of the given + technology. + host (str): + Optional. The name or address of a host. + port (int): + Optional. The port of an endpoint usually + specified for a connection. + database (str): + Optional. The name of the database. + security_protocol (google.cloud.oracledatabase_v1.types.GoldengateMysqlConnectionProperties.MysqlSecurityProtocol): + Optional. Security Type for MySQL. + ssl_mode (google.cloud.oracledatabase_v1.types.GoldengateMysqlConnectionProperties.SSLMode): + Optional. SSL modes for MySQL. + ssl_ca_file (str): + Optional. Database Certificate - The base64 + encoded content of a .pem or .crt file + containing the server public key (for 1 and + 2-way SSL). + ssl_crl_file (str): + Optional. The base64 encoded list of + certificates revoked by the trusted certificate + authorities (Trusted CA). + ssl_cert_file (str): + Optional. Client Certificate - The base64 + encoded content of a .pem or .crt file + containing the client public key (for 2-way + SSL). + ssl_key_file (str): + Optional. Client Key - The base64 encoded + content of a .pem or .crt file containing the + client private key (for 2-way SSL). + additional_attributes (MutableSequence[google.cloud.oracledatabase_v1.types.NameValuePair]): + Optional. An array of name-value pair + attribute entries. Used as additional parameters + in connection string. + db_system_id (str): + Optional. The OCID of the database system + being referenced. + """ + + class MysqlSecurityProtocol(proto.Enum): + r"""Enum for Security Type for MySQL. + + Values: + MYSQL_SECURITY_PROTOCOL_UNSPECIFIED (0): + Security type not specified. + PLAIN (1): + Plain text communication. + TLS (2): + Transport Layer Security. + MTLS (3): + Mutual Transport Layer Security. + """ + + MYSQL_SECURITY_PROTOCOL_UNSPECIFIED = 0 + PLAIN = 1 + TLS = 2 + MTLS = 3 + + class SSLMode(proto.Enum): + r"""Enum for SSL modes for MySQL. + + Values: + SSL_MODE_UNSPECIFIED (0): + SSL mode not specified. + DISABLED (1): + SSL is disabled. + PREFERRED (2): + SSL is preferred. + REQUIRED (3): + SSL is required. + VERIFY_CA (4): + SSL is required and certificate is verified. + VERIFY_IDENTITY (5): + SSL is required and certificate and hostname + are verified. + """ + + SSL_MODE_UNSPECIFIED = 0 + DISABLED = 1 + PREFERRED = 2 + REQUIRED = 3 + VERIFY_CA = 4 + VERIFY_IDENTITY = 5 + + password: str = proto.Field( + proto.STRING, + number=15, + oneof="connection_password_options", + ) + password_secret_version: str = proto.Field( + proto.STRING, + number=16, + oneof="connection_password_options", + ) + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + username: str = proto.Field( + proto.STRING, + number=2, + ) + host: str = proto.Field( + proto.STRING, + number=4, + ) + port: int = proto.Field( + proto.INT32, + number=5, + ) + database: str = proto.Field( + proto.STRING, + number=6, + ) + security_protocol: MysqlSecurityProtocol = proto.Field( + proto.ENUM, + number=7, + enum=MysqlSecurityProtocol, + ) + ssl_mode: SSLMode = proto.Field( + proto.ENUM, + number=8, + enum=SSLMode, + ) + ssl_ca_file: str = proto.Field( + proto.STRING, + number=9, + ) + ssl_crl_file: str = proto.Field( + proto.STRING, + number=10, + ) + ssl_cert_file: str = proto.Field( + proto.STRING, + number=11, + ) + ssl_key_file: str = proto.Field( + proto.STRING, + number=12, + ) + additional_attributes: MutableSequence["NameValuePair"] = proto.RepeatedField( + proto.MESSAGE, + number=13, + message="NameValuePair", + ) + db_system_id: str = proto.Field( + proto.STRING, + number=14, + ) + + +class GoldengateKafkaConnectionProperties(proto.Message): + r"""The properties of GoldengateKafkaConnection. + + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + + Attributes: + password (str): + Optional. Input only. The password for Kafka + basic/SASL auth in plain text. + + This field is a member of `oneof`_ ``connection_password_options``. + password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the password for Kafka basic/SASL auth. Format: + + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``connection_password_options``. + trust_store_password (str): + Optional. Input only. The TrustStore password + in plain text. + + This field is a member of `oneof`_ ``trust_store_password_options``. + trust_store_password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the TrustStore password. Format: + + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``trust_store_password_options``. + key_store_password (str): + Optional. Input only. The KeyStore password + in plain text. + + This field is a member of `oneof`_ ``key_store_password_options``. + key_store_password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the KeyStore password. Format: + + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``key_store_password_options``. + ssl_key_password (str): + Optional. Input only. The password for the + cert inside of the KeyStore in plain text. + + This field is a member of `oneof`_ ``ssl_key_password_options``. + ssl_key_password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the password for the cert inside of the + KeyStore. Format: + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``ssl_key_password_options``. + technology_type (str): + Optional. The technology type of + KafkaConnection. + stream_pool_id (str): + Optional. The OCID of the stream pool being + referenced. + cluster_id (str): + Optional. The OCID of the Kafka cluster being + referenced from OCI Streaming with Apache Kafka. + bootstrap_servers (MutableSequence[google.cloud.oracledatabase_v1.types.KafkaBootstrapServer]): + Optional. Kafka bootstrap. Equivalent of + bootstrap.servers configuration property in + Kafka: list of KafkaBootstrapServer objects + specified by host/port. Used for establishing + the initial connection to the Kafka cluster. + Example: + "server1.example.com:9092,server2.example.com:9092". + security_protocol (google.cloud.oracledatabase_v1.types.GoldengateKafkaConnectionProperties.KafkaSecurityProtocol): + Optional. Security Type for Kafka. + username (str): + Optional. The username Oracle Goldengate uses + to connect the associated system of the given + technology. + trust_store_file (str): + Optional. The base64 encoded content of the + TrustStore file. + key_store_file (str): + Optional. The base64 encoded content of the + KeyStore file. + consumer_properties_file (str): + Optional. The base64 encoded content of the + consumer.properties file. + producer_properties_file (str): + Optional. The base64 encoded content of the + producer.properties file. + use_resource_principal (bool): + Optional. Specifies that the user intends to + authenticate to the instance using a resource + principal. Applicable only for OCI Streaming + connections. + """ + + class KafkaSecurityProtocol(proto.Enum): + r"""Enum for Security Type for Kafka. + + Values: + KAFKA_SECURITY_PROTOCOL_UNSPECIFIED (0): + Security type not specified. + SSL (1): + SSL security protocol. + SASL_SSL (2): + SASL SSL security protocol. + PLAINTEXT (3): + Plaintext security protocol. + SASL_PLAINTEXT (4): + SASL Plaintext security protocol. + """ + + KAFKA_SECURITY_PROTOCOL_UNSPECIFIED = 0 + SSL = 1 + SASL_SSL = 2 + PLAINTEXT = 3 + SASL_PLAINTEXT = 4 + + password: str = proto.Field( + proto.STRING, + number=16, + oneof="connection_password_options", + ) + password_secret_version: str = proto.Field( + proto.STRING, + number=20, + oneof="connection_password_options", + ) + trust_store_password: str = proto.Field( + proto.STRING, + number=17, + oneof="trust_store_password_options", + ) + trust_store_password_secret_version: str = proto.Field( + proto.STRING, + number=21, + oneof="trust_store_password_options", + ) + key_store_password: str = proto.Field( + proto.STRING, + number=18, + oneof="key_store_password_options", + ) + key_store_password_secret_version: str = proto.Field( + proto.STRING, + number=22, + oneof="key_store_password_options", + ) + ssl_key_password: str = proto.Field( + proto.STRING, + number=19, + oneof="ssl_key_password_options", + ) + ssl_key_password_secret_version: str = proto.Field( + proto.STRING, + number=23, + oneof="ssl_key_password_options", + ) + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + stream_pool_id: str = proto.Field( + proto.STRING, + number=2, + ) + cluster_id: str = proto.Field( + proto.STRING, + number=3, + ) + bootstrap_servers: MutableSequence["KafkaBootstrapServer"] = proto.RepeatedField( + proto.MESSAGE, + number=4, + message="KafkaBootstrapServer", + ) + security_protocol: KafkaSecurityProtocol = proto.Field( + proto.ENUM, + number=5, + enum=KafkaSecurityProtocol, + ) + username: str = proto.Field( + proto.STRING, + number=6, + ) + trust_store_file: str = proto.Field( + proto.STRING, + number=8, + ) + key_store_file: str = proto.Field( + proto.STRING, + number=10, + ) + consumer_properties_file: str = proto.Field( + proto.STRING, + number=13, + ) + producer_properties_file: str = proto.Field( + proto.STRING, + number=14, + ) + use_resource_principal: bool = proto.Field( + proto.BOOL, + number=15, + ) + + +class GoldengateKafkaSchemaRegistryConnectionProperties(proto.Message): + r"""The properties of GoldengateKafkaSchemaRegistryConnection. + + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + + Attributes: + password (str): + Optional. Input only. The password to access + Schema Registry in plain text. + + This field is a member of `oneof`_ ``connection_password_options``. + password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the password to access Schema Registry using + basic authentication. Format: + + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``connection_password_options``. + trust_store_password (str): + Optional. Input only. The TrustStore password + in plain text. + + This field is a member of `oneof`_ ``trust_store_password_options``. + trust_store_password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the TrustStore password. Format: + + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``trust_store_password_options``. + key_store_password (str): + Optional. Input only. The KeyStore password + in plain text. + + This field is a member of `oneof`_ ``key_store_password_options``. + key_store_password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the KeyStore password. Format: + + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``key_store_password_options``. + ssl_key_password (str): + Optional. Input only. The password for the + cert inside the KeyStore in plain text. + + This field is a member of `oneof`_ ``ssl_key_password_options``. + ssl_key_password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the password for the cert inside the KeyStore. + Format: + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``ssl_key_password_options``. + technology_type (str): + Optional. The technology type of + KafkaSchemaRegistryConnection. + url (str): + Optional. Kafka Schema Registry URL. + e.g.: 'https://server1.us.oracle.com:8081' + authentication_type (google.cloud.oracledatabase_v1.types.GoldengateKafkaSchemaRegistryConnectionProperties.AuthenticationType): + Optional. Used authentication mechanism to + access Schema Registry. + username (str): + Optional. The username to access Schema + Registry using basic authentication. This value + is injected into + 'schema.registry.basic.auth.user.info=user:password' + configuration property. + trust_store_file (str): + Optional. The base64 encoded content of the + TrustStore file. + key_store_file (str): + Optional. The base64 encoded content of the + KeyStore file. + """ + + class AuthenticationType(proto.Enum): + r"""Enum for authentication mechanism to access Schema Registry. + + Values: + AUTHENTICATION_TYPE_UNSPECIFIED (0): + Authentication type not specified. + NONE (1): + No authentication. + BASIC (2): + Basic authentication. + MUTUAL (3): + Mutual authentication. + """ + + AUTHENTICATION_TYPE_UNSPECIFIED = 0 + NONE = 1 + BASIC = 2 + MUTUAL = 3 + + password: str = proto.Field( + proto.STRING, + number=11, + oneof="connection_password_options", + ) + password_secret_version: str = proto.Field( + proto.STRING, + number=15, + oneof="connection_password_options", + ) + trust_store_password: str = proto.Field( + proto.STRING, + number=12, + oneof="trust_store_password_options", + ) + trust_store_password_secret_version: str = proto.Field( + proto.STRING, + number=16, + oneof="trust_store_password_options", + ) + key_store_password: str = proto.Field( + proto.STRING, + number=13, + oneof="key_store_password_options", + ) + key_store_password_secret_version: str = proto.Field( + proto.STRING, + number=17, + oneof="key_store_password_options", + ) + ssl_key_password: str = proto.Field( + proto.STRING, + number=14, + oneof="ssl_key_password_options", + ) + ssl_key_password_secret_version: str = proto.Field( + proto.STRING, + number=18, + oneof="ssl_key_password_options", + ) + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + url: str = proto.Field( + proto.STRING, + number=2, + ) + authentication_type: AuthenticationType = proto.Field( + proto.ENUM, + number=3, + enum=AuthenticationType, + ) + username: str = proto.Field( + proto.STRING, + number=4, + ) + trust_store_file: str = proto.Field( + proto.STRING, + number=6, + ) + key_store_file: str = proto.Field( + proto.STRING, + number=8, + ) + + +class GoldengateOciObjectStorageConnectionProperties(proto.Message): + r"""The properties of GoldengateOciObjectStorageConnection. + + Attributes: + technology_type (str): + Optional. The technology type of + OciObjectStorageConnection. + tenancy_id (str): + Optional. The OCID of the related OCI + tenancy. + region (str): + Optional. The name of the region of OCI + Object Storage. e.g.: us-ashburn-1 If the region + is not provided, backend will default to the + default region. + user_id (str): + Optional. The OCID of the OCI user who will + access the Object Storage. The user must have + write access to the bucket they want to connect + to. + private_key_file (str): + Optional. The content of the private key file + (PEM file) corresponding to the API key of the + fingerprint. + private_key_passphrase_secret (str): + Optional. The passphrase of the private key. + public_key_fingerprint (str): + Optional. The fingerprint of the API Key of + the user specified by the userId. + use_resource_principal (bool): + Optional. Specifies that the user intends to + authenticate to the instance using a resource + principal. + """ + + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + tenancy_id: str = proto.Field( + proto.STRING, + number=2, + ) + region: str = proto.Field( + proto.STRING, + number=3, + ) + user_id: str = proto.Field( + proto.STRING, + number=4, + ) + private_key_file: str = proto.Field( + proto.STRING, + number=5, + ) + private_key_passphrase_secret: str = proto.Field( + proto.STRING, + number=6, + ) + public_key_fingerprint: str = proto.Field( + proto.STRING, + number=7, + ) + use_resource_principal: bool = proto.Field( + proto.BOOL, + number=8, + ) + + +class GoldengateAzureDataLakeStorageConnectionProperties(proto.Message): + r"""The properties of GoldengateAzureDataLakeStorageConnection. + + Attributes: + technology_type (str): + Optional. The technology type of + AzureDataLakeStorageConnection. + authentication_type (google.cloud.oracledatabase_v1.types.GoldengateAzureDataLakeStorageConnectionProperties.AuthenticationType): + Optional. Authentication mechanism to access + Azure Data Lake Storage. + account (str): + Optional. Sets the Azure storage account + name. + account_key_secret (str): + Optional. Azure storage account key. This property is + required when 'authentication_type' is set to 'SHARED_KEY'. + sas_token_secret (str): + Optional. Credential that uses a shared + access signature (SAS) to authenticate to an + Azure Service. + azure_tenant_id (str): + Optional. Azure tenant ID of the application. This property + is required when 'authentication_type' is set to + 'AZURE_ACTIVE_DIRECTORY'. + client_id (str): + Optional. Azure client ID of the application. This property + is required when 'authentication_type' is set to + 'AZURE_ACTIVE_DIRECTORY'. + client_secret (str): + Optional. Azure client secret (aka + application password) for authentication. + endpoint (str): + Optional. Azure Storage service endpoint. + e.g: https://test.blob.core.windows.net + azure_authority_host (str): + Optional. The endpoint used for + authentication with Microsoft Entra ID (formerly + Azure Active Directory). Default value: + + https://login.microsoftonline.com + """ + + class AuthenticationType(proto.Enum): + r"""Enum for authentication mechanism to access Azure Data Lake + Storage. + + Values: + AUTHENTICATION_TYPE_UNSPECIFIED (0): + Authentication type not specified. + SHARED_KEY (1): + Shared key authentication. + SHARED_ACCESS_SIGNATURE (2): + Shared access signature authentication. + AZURE_ACTIVE_DIRECTORY (3): + Azure active directory authentication. + """ + + AUTHENTICATION_TYPE_UNSPECIFIED = 0 + SHARED_KEY = 1 + SHARED_ACCESS_SIGNATURE = 2 + AZURE_ACTIVE_DIRECTORY = 3 + + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + authentication_type: AuthenticationType = proto.Field( + proto.ENUM, + number=2, + enum=AuthenticationType, + ) + account: str = proto.Field( + proto.STRING, + number=3, + ) + account_key_secret: str = proto.Field( + proto.STRING, + number=4, + ) + sas_token_secret: str = proto.Field( + proto.STRING, + number=5, + ) + azure_tenant_id: str = proto.Field( + proto.STRING, + number=6, + ) + client_id: str = proto.Field( + proto.STRING, + number=7, + ) + client_secret: str = proto.Field( + proto.STRING, + number=8, + ) + endpoint: str = proto.Field( + proto.STRING, + number=9, + ) + azure_authority_host: str = proto.Field( + proto.STRING, + number=10, + ) + + +class GoldengateAzureSynapseAnalyticsConnectionProperties(proto.Message): + r"""The properties of GoldengateAzureSynapseAnalyticsConnection. + + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + + Attributes: + password (str): + Optional. Input only. The password Oracle + Goldengate uses for Azure Synapse Analytics + connection in plain text. + + This field is a member of `oneof`_ ``connection_password_options``. + password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the password Oracle Goldengate uses for Azure + Synapse Analytics connection. Format: + + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``connection_password_options``. + technology_type (str): + Optional. The technology type of + AzureSynapseAnalyticsConnection. + connection_string (str): + Optional. JDBC connection string. e.g.: + 'jdbc:sqlserver://.sql.azuresynapse.net:1433;database=;encrypt=true;trustServerCertificate=false;hostNameInCertificate=\*.sql.azuresynapse.net;loginTimeout=300;' + username (str): + Optional. The username Oracle Goldengate uses + to connect the associated system of the given + technology. + """ + + password: str = proto.Field( + proto.STRING, + number=5, + oneof="connection_password_options", + ) + password_secret_version: str = proto.Field( + proto.STRING, + number=6, + oneof="connection_password_options", + ) + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + connection_string: str = proto.Field( + proto.STRING, + number=2, + ) + username: str = proto.Field( + proto.STRING, + number=3, + ) + + +class GoldengatePostgresqlConnectionProperties(proto.Message): + r"""The properties of GoldengatePostgresqlConnection. + + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + + Attributes: + password (str): + Optional. Input only. The password Oracle + Goldengate uses for PostgreSQL connection in + plain text. + + This field is a member of `oneof`_ ``connection_password_options``. + password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the password Oracle Goldengate uses for + PostgreSQL connection. Format: + + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``connection_password_options``. + technology_type (str): + Optional. The technology type of + PostgresqlConnection. + database (str): + Optional. The name of the database. + host (str): + Optional. The name or address of a host. + port (int): + Optional. The port of an endpoint usually + specified for a connection. + username (str): + Optional. The username Oracle Goldengate uses + to connect the associated system of the given + technology. + additional_attributes (MutableSequence[google.cloud.oracledatabase_v1.types.NameValuePair]): + Optional. An array of name-value pair + attribute entries. Used as additional parameters + in connection string. + security_protocol (google.cloud.oracledatabase_v1.types.GoldengatePostgresqlConnectionProperties.PostgresqlSecurityProtocol): + Optional. Security protocol for PostgreSQL. + ssl_mode (google.cloud.oracledatabase_v1.types.GoldengatePostgresqlConnectionProperties.PostgresqlSslMode): + Optional. SSL modes for PostgreSQL. + ssl_ca_file (str): + Optional. The base64 encoded certificate of + the trusted certificate authorities (Trusted CA) + for PostgreSQL. + ssl_crl_file (str): + Optional. The base64 encoded list of + certificates revoked by the trusted certificate + authorities (Trusted CA). + ssl_cert_file (str): + Optional. The base64 encoded certificate of + the PostgreSQL server. + ssl_key_file (str): + Optional. The base64 encoded private key of + the PostgreSQL server. + db_system_id (str): + Optional. The OCID of the database system + being referenced. + """ + + class PostgresqlSecurityProtocol(proto.Enum): + r"""Enum for Security protocol for PostgreSQL. + + Values: + POSTGRESQL_SECURITY_PROTOCOL_UNSPECIFIED (0): + Security protocol not specified. + PLAIN (1): + Plain text communication. + TLS (2): + Transport Layer Security. + MTLS (3): + Mutual Transport Layer Security. + """ + + POSTGRESQL_SECURITY_PROTOCOL_UNSPECIFIED = 0 + PLAIN = 1 + TLS = 2 + MTLS = 3 + + class PostgresqlSslMode(proto.Enum): + r"""Enum for SSL modes for PostgreSQL. + + Values: + POSTGRESQL_SSL_MODE_UNSPECIFIED (0): + SSL mode not specified. + PREFER (1): + Prefer SSL. + REQUIRE (2): + Require SSL. + VERIFY_CA (3): + Verify Certificate Authority. + VERIFY_FULL (4): + Verify Full. + """ + + POSTGRESQL_SSL_MODE_UNSPECIFIED = 0 + PREFER = 1 + REQUIRE = 2 + VERIFY_CA = 3 + VERIFY_FULL = 4 + + password: str = proto.Field( + proto.STRING, + number=15, + oneof="connection_password_options", + ) + password_secret_version: str = proto.Field( + proto.STRING, + number=16, + oneof="connection_password_options", + ) + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + database: str = proto.Field( + proto.STRING, + number=2, + ) + host: str = proto.Field( + proto.STRING, + number=3, + ) + port: int = proto.Field( + proto.INT32, + number=4, + ) + username: str = proto.Field( + proto.STRING, + number=5, + ) + additional_attributes: MutableSequence["NameValuePair"] = proto.RepeatedField( + proto.MESSAGE, + number=7, + message="NameValuePair", + ) + security_protocol: PostgresqlSecurityProtocol = proto.Field( + proto.ENUM, + number=8, + enum=PostgresqlSecurityProtocol, + ) + ssl_mode: PostgresqlSslMode = proto.Field( + proto.ENUM, + number=9, + enum=PostgresqlSslMode, + ) + ssl_ca_file: str = proto.Field( + proto.STRING, + number=10, + ) + ssl_crl_file: str = proto.Field( + proto.STRING, + number=11, + ) + ssl_cert_file: str = proto.Field( + proto.STRING, + number=12, + ) + ssl_key_file: str = proto.Field( + proto.STRING, + number=13, + ) + db_system_id: str = proto.Field( + proto.STRING, + number=14, + ) + + +class GoldengateMicrosoftSqlserverConnectionProperties(proto.Message): + r"""The properties of GoldengateMicrosoftSqlserverConnection. + + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + + Attributes: + password (str): + Optional. Input only. The password Oracle + Goldengate uses for Microsoft SQL Server + connection in plain text. + + This field is a member of `oneof`_ ``connection_password_options``. + password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the password Oracle Goldengate uses for + Microsoft SQL Server connection. Format: + + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``connection_password_options``. + technology_type (str): + Optional. The technology type of + MicrosoftSqlserverConnection. + database (str): + Optional. The name of the database. + host (str): + Optional. The name or address of a host. + port (int): + Optional. The port of an endpoint usually + specified for a connection. + username (str): + Optional. The username Oracle Goldengate uses + to connect to the Microsoft SQL Server. + additional_attributes (MutableSequence[google.cloud.oracledatabase_v1.types.NameValuePair]): + Optional. An array of name-value pair + attribute entries. Used as additional parameters + in connection string. + security_protocol (google.cloud.oracledatabase_v1.types.GoldengateMicrosoftSqlserverConnectionProperties.MicrosoftSqlserverSecurityProtocol): + Optional. Security Type for Microsoft SQL + Server. + ssl_ca_file (str): + Optional. Database Certificate - The base64 + encoded content of a .pem or .crt file + containing the server public key (for 1-way + SSL). + server_certificate_validation_required (bool): + Optional. If set to true, the driver + validates the certificate that is sent by the + database server. + """ + + class MicrosoftSqlserverSecurityProtocol(proto.Enum): + r"""Enum for Security Type for Microsoft SQL Server. + + Values: + MICROSOFT_SQLSERVER_SECURITY_PROTOCOL_UNSPECIFIED (0): + Security type not specified. + PLAIN (1): + Plain text communication. + TLS (2): + Transport Layer Security. + """ + + MICROSOFT_SQLSERVER_SECURITY_PROTOCOL_UNSPECIFIED = 0 + PLAIN = 1 + TLS = 2 + + password: str = proto.Field( + proto.STRING, + number=11, + oneof="connection_password_options", + ) + password_secret_version: str = proto.Field( + proto.STRING, + number=12, + oneof="connection_password_options", + ) + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + database: str = proto.Field( + proto.STRING, + number=2, + ) + host: str = proto.Field( + proto.STRING, + number=3, + ) + port: int = proto.Field( + proto.INT32, + number=4, + ) + username: str = proto.Field( + proto.STRING, + number=5, + ) + additional_attributes: MutableSequence["NameValuePair"] = proto.RepeatedField( + proto.MESSAGE, + number=7, + message="NameValuePair", + ) + security_protocol: MicrosoftSqlserverSecurityProtocol = proto.Field( + proto.ENUM, + number=8, + enum=MicrosoftSqlserverSecurityProtocol, + ) + ssl_ca_file: str = proto.Field( + proto.STRING, + number=9, + ) + server_certificate_validation_required: bool = proto.Field( + proto.BOOL, + number=10, + ) + + +class GoldengateAmazonS3ConnectionProperties(proto.Message): + r"""The properties of GoldengateAmazonS3Connection. + + Attributes: + technology_type (str): + Optional. The technology type of + AmazonS3Connection. + access_key_id (str): + Optional. Access key ID to access the Amazon + S3 bucket. + secret_access_key_secret (str): + Optional. Secret access key to access the + Amazon S3 bucket. + endpoint (str): + Optional. The Amazon Endpoint for S3. + region (str): + Optional. The name of the AWS region where + the bucket is created. + """ + + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + access_key_id: str = proto.Field( + proto.STRING, + number=2, + ) + secret_access_key_secret: str = proto.Field( + proto.STRING, + number=3, + ) + endpoint: str = proto.Field( + proto.STRING, + number=4, + ) + region: str = proto.Field( + proto.STRING, + number=5, + ) + + +class GoldengateHdfsConnectionProperties(proto.Message): + r"""The properties of GoldengateHdfsConnection. + + Attributes: + technology_type (str): + Optional. The technology type of + HdfsConnection. + core_site_xml (str): + Optional. The content of the Hadoop + Distributed File System configuration file + (core-site.xml). + """ + + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + core_site_xml: str = proto.Field( + proto.STRING, + number=2, + ) + + +class GoldengateJavaMessageServiceConnectionProperties(proto.Message): + r"""The properties of GoldengateJavaMessageServiceConnection. + + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + + Attributes: + password (str): + Optional. Input only. The password Oracle + Goldengate uses to connect the Java Message + Service in plain text. + + This field is a member of `oneof`_ ``connection_password_options``. + password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the password Oracle Goldengate uses to connect + the associated Java Message Service. Format: + + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``connection_password_options``. + trust_store_password (str): + Optional. Input only. The TrustStore password + in plain text. + + This field is a member of `oneof`_ ``trust_store_password_options``. + trust_store_password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the TrustStore password. Format: + + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``trust_store_password_options``. + key_store_password (str): + Optional. Input only. The KeyStore password + in plain text. + + This field is a member of `oneof`_ ``key_store_password_options``. + key_store_password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the KeyStore password. Format: + + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``key_store_password_options``. + ssl_key_password (str): + Optional. Input only. The password for the + cert inside of the KeyStore in plain text. + + This field is a member of `oneof`_ ``ssl_key_password_options``. + ssl_key_password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the password for the cert inside of the + KeyStore. Format: + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``ssl_key_password_options``. + technology_type (str): + Optional. The technology type of + JavaMessageServiceConnection. + use_jndi (bool): + Optional. If set to true, Java Naming and + Directory Interface (JNDI) properties should be + provided. + jndi_connection_factory (str): + Optional. The Connection Factory can be + looked up using this name. e.g.: + 'ConnectionFactory' + jndi_provider_url (str): + Optional. The URL that Java Message Service + will use to contact the JNDI provider. e.g.: + 'tcp://myjms.host.domain:61616?jms.prefetchPolicy.all=1000' + jndi_initial_context_factory (str): + Optional. The implementation of + javax.naming.spi.InitialContextFactory interface + used to obtain initial naming context. + jndi_security_principal (str): + Optional. Specifies the identity of the + principal (user) to be authenticated. + jndi_security_credentials_secret (str): + Optional. The password associated to the + principal. + connection_url (str): + Optional. Connection URL of the Java Message + Service, specifying the protocol, host, and + port. e.g.: 'mq://myjms.host.domain:7676' + connection_factory (str): + Optional. The Java class implementing + javax.jms.ConnectionFactory interface supplied + by the JMS provider. + username (str): + Optional. The username Oracle Goldengate uses + to connect to the Java Message Service. + security_protocol (google.cloud.oracledatabase_v1.types.GoldengateJavaMessageServiceConnectionProperties.JmsSecurityProtocol): + Optional. Security protocol for Java Message + Service. + authentication_type (google.cloud.oracledatabase_v1.types.GoldengateJavaMessageServiceConnectionProperties.JmsAuthenticationType): + Optional. Authentication type for Java + Message Service. + trust_store_file (str): + Optional. The base64 encoded content of the + TrustStore file. + key_store_file (str): + Optional. The base64 encoded content of the + KeyStore file. + """ + + class JmsSecurityProtocol(proto.Enum): + r"""Enum for Security protocol for Java Message Service. + + Values: + JMS_SECURITY_PROTOCOL_UNSPECIFIED (0): + Security protocol not specified. + PLAIN (1): + Plain text communication. + TLS (2): + Transport Layer Security. + MTLS (3): + Mutual Transport Layer Security. + """ + + JMS_SECURITY_PROTOCOL_UNSPECIFIED = 0 + PLAIN = 1 + TLS = 2 + MTLS = 3 + + class JmsAuthenticationType(proto.Enum): + r"""Enum for Authentication type for Java Message Service. + + Values: + JMS_AUTHENTICATION_TYPE_UNSPECIFIED (0): + Authentication type not specified. + NONE (1): + No authentication. + BASIC (2): + Basic authentication. + """ + + JMS_AUTHENTICATION_TYPE_UNSPECIFIED = 0 + NONE = 1 + BASIC = 2 + + password: str = proto.Field( + proto.STRING, + number=19, + oneof="connection_password_options", + ) + password_secret_version: str = proto.Field( + proto.STRING, + number=23, + oneof="connection_password_options", + ) + trust_store_password: str = proto.Field( + proto.STRING, + number=20, + oneof="trust_store_password_options", + ) + trust_store_password_secret_version: str = proto.Field( + proto.STRING, + number=24, + oneof="trust_store_password_options", + ) + key_store_password: str = proto.Field( + proto.STRING, + number=21, + oneof="key_store_password_options", + ) + key_store_password_secret_version: str = proto.Field( + proto.STRING, + number=25, + oneof="key_store_password_options", + ) + ssl_key_password: str = proto.Field( + proto.STRING, + number=22, + oneof="ssl_key_password_options", + ) + ssl_key_password_secret_version: str = proto.Field( + proto.STRING, + number=26, + oneof="ssl_key_password_options", + ) + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + use_jndi: bool = proto.Field( + proto.BOOL, + number=2, + ) + jndi_connection_factory: str = proto.Field( + proto.STRING, + number=3, + ) + jndi_provider_url: str = proto.Field( + proto.STRING, + number=4, + ) + jndi_initial_context_factory: str = proto.Field( + proto.STRING, + number=5, + ) + jndi_security_principal: str = proto.Field( + proto.STRING, + number=6, + ) + jndi_security_credentials_secret: str = proto.Field( + proto.STRING, + number=7, + ) + connection_url: str = proto.Field( + proto.STRING, + number=8, + ) + connection_factory: str = proto.Field( + proto.STRING, + number=9, + ) + username: str = proto.Field( + proto.STRING, + number=10, + ) + security_protocol: JmsSecurityProtocol = proto.Field( + proto.ENUM, + number=12, + enum=JmsSecurityProtocol, + ) + authentication_type: JmsAuthenticationType = proto.Field( + proto.ENUM, + number=13, + enum=JmsAuthenticationType, + ) + trust_store_file: str = proto.Field( + proto.STRING, + number=14, + ) + key_store_file: str = proto.Field( + proto.STRING, + number=16, + ) + + +class GoldengateMongodbConnectionProperties(proto.Message): + r"""The properties of GoldengateMongodbConnection. + + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + + Attributes: + password (str): + Optional. Input only. The password Oracle + Goldengate uses to connect the Mongodb + connection in plain text. + + This field is a member of `oneof`_ ``connection_password_options``. + password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the password Oracle Goldengate uses to connect + the Mongodb connection. Format: + + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``connection_password_options``. + tls_certificate_key_file_password (str): + Optional. Input only. The Client Certificate + key file password in plain text. + + This field is a member of `oneof`_ ``tls_certificate_key_file_password_options``. + tls_certificate_key_file_password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the Client Certificate key file password in + Secret Manager. Format: + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``tls_certificate_key_file_password_options``. + technology_type (str): + Optional. The technology type of + MongodbConnection. + connection_string (str): + Optional. MongoDB connection string. + e.g.: + 'mongodb://mongodb0.example.com:27017/recordsrecords' + username (str): + Optional. The username Oracle Goldengate uses + to connect to the database. + database_id (str): + Optional. The OCID of the Oracle Autonomous + Json Database. + security_protocol (google.cloud.oracledatabase_v1.types.GoldengateMongodbConnectionProperties.MongodbSecurityProtocol): + Optional. Security Type for MongoDB. + tls_ca_file (str): + Optional. Database Certificate - The base64 + encoded content of a .pem file, containing the + server public key (for 1 and 2-way SSL). + tls_certificate_key_file (str): + Optional. Client Certificate - The base64 + encoded content of a .pem file, containing the + client public key (for 2-way SSL). + """ + + class MongodbSecurityProtocol(proto.Enum): + r"""Enum for Security Type for MongoDB. + + Values: + MONGODB_SECURITY_PROTOCOL_UNSPECIFIED (0): + Security type not specified. + PLAIN (1): + Plain text communication. + TLS (2): + Transport Layer Security. + MTLS (3): + Mutual Transport Layer Security. + """ + + MONGODB_SECURITY_PROTOCOL_UNSPECIFIED = 0 + PLAIN = 1 + TLS = 2 + MTLS = 3 + + password: str = proto.Field( + proto.STRING, + number=10, + oneof="connection_password_options", + ) + password_secret_version: str = proto.Field( + proto.STRING, + number=12, + oneof="connection_password_options", + ) + tls_certificate_key_file_password: str = proto.Field( + proto.STRING, + number=11, + oneof="tls_certificate_key_file_password_options", + ) + tls_certificate_key_file_password_secret_version: str = proto.Field( + proto.STRING, + number=13, + oneof="tls_certificate_key_file_password_options", + ) + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + connection_string: str = proto.Field( + proto.STRING, + number=2, + ) + username: str = proto.Field( + proto.STRING, + number=3, + ) + database_id: str = proto.Field( + proto.STRING, + number=5, + ) + security_protocol: MongodbSecurityProtocol = proto.Field( + proto.ENUM, + number=6, + enum=MongodbSecurityProtocol, + ) + tls_ca_file: str = proto.Field( + proto.STRING, + number=7, + ) + tls_certificate_key_file: str = proto.Field( + proto.STRING, + number=8, + ) + + +class GoldengateOracleNosqlConnectionProperties(proto.Message): + r"""The properties of GoldengateOracleNosqlConnection. + + Attributes: + technology_type (str): + Optional. The technology type of + OracleNosqlConnection. + tenancy_id (str): + Optional. The OCID of the OCI tenancy. + region (str): + Optional. The name of the region. e.g.: + us-ashburn-1 + user_id (str): + Optional. The OCID of the OCI user who will + access the Oracle NoSQL database. + private_key_file (str): + Optional. The content of the private key file + (PEM file) corresponding to the API key of the + fingerprint. + private_key_passphrase_secret (str): + Optional. The passphrase of the private key. + public_key_fingerprint (str): + Optional. The fingerprint of the API Key of + the user specified by the userId. + use_resource_principal (bool): + Optional. Specifies that the user intends to + authenticate to the instance using a resource + principal. + """ + + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + tenancy_id: str = proto.Field( + proto.STRING, + number=2, + ) + region: str = proto.Field( + proto.STRING, + number=3, + ) + user_id: str = proto.Field( + proto.STRING, + number=4, + ) + private_key_file: str = proto.Field( + proto.STRING, + number=5, + ) + private_key_passphrase_secret: str = proto.Field( + proto.STRING, + number=6, + ) + public_key_fingerprint: str = proto.Field( + proto.STRING, + number=7, + ) + use_resource_principal: bool = proto.Field( + proto.BOOL, + number=8, + ) + + +class GoldengateSnowflakeConnectionProperties(proto.Message): + r"""The properties of GoldengateSnowflakeConnection. + + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + + Attributes: + password (str): + Optional. Input only. The password Oracle + Goldengate uses to connect to Snowflake platform + in plain text. + + This field is a member of `oneof`_ ``connection_password_options``. + password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the password Oracle Goldengate uses to connect + to Snowflake platform. Format: + + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``connection_password_options``. + technology_type (str): + Optional. The technology type of + SnowflakeConnection. + connection_url (str): + Optional. JDBC connection URL. e.g.: + 'jdbc:snowflake://.snowflakecomputing.com/?warehouse=&db=' + authentication_type (google.cloud.oracledatabase_v1.types.GoldengateSnowflakeConnectionProperties.AuthenticationType): + Optional. Used authentication mechanism to + access Snowflake. + username (str): + Optional. The username Oracle Goldengate uses + to connect to Snowflake. + private_key_file (str): + Optional. The content of private key file in + PEM format. + private_key_passphrase_secret (str): + Optional. Password if the private key file is + encrypted. + """ + + class AuthenticationType(proto.Enum): + r"""Enum for authentication mechanism to access Snowflake. + + Values: + AUTHENTICATION_TYPE_UNSPECIFIED (0): + Authentication type not specified. + BASIC (1): + Basic authentication. + KEY_PAIR (2): + Key pair authentication. + """ + + AUTHENTICATION_TYPE_UNSPECIFIED = 0 + BASIC = 1 + KEY_PAIR = 2 + + password: str = proto.Field( + proto.STRING, + number=8, + oneof="connection_password_options", + ) + password_secret_version: str = proto.Field( + proto.STRING, + number=9, + oneof="connection_password_options", + ) + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + connection_url: str = proto.Field( + proto.STRING, + number=2, + ) + authentication_type: AuthenticationType = proto.Field( + proto.ENUM, + number=3, + enum=AuthenticationType, + ) + username: str = proto.Field( + proto.STRING, + number=4, + ) + private_key_file: str = proto.Field( + proto.STRING, + number=6, + ) + private_key_passphrase_secret: str = proto.Field( + proto.STRING, + number=7, + ) + + +class GoldengateAmazonRedshiftConnectionProperties(proto.Message): + r"""The properties of GoldengateAmazonRedshiftConnection. + + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + + Attributes: + password (str): + Optional. Input only. The password Oracle + Goldengate uses for Amazon Redshift connection + in plain text. + + This field is a member of `oneof`_ ``connection_password_options``. + password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the password Oracle Goldengate uses for Amazon + Redshift connection. Format: + + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``connection_password_options``. + technology_type (str): + Optional. The technology type of + AmazonRedshiftConnection. + connection_url (str): + Optional. Connection URL. + e.g.: + + 'jdbc:redshift://aws-redshift-instance.aaaaaaaaaaaa.us-east-2.redshift.amazonaws.com:5439/mydb' + username (str): + Optional. The username Oracle Goldengate uses + to connect the associated system of the given + technology. + """ + + password: str = proto.Field( + proto.STRING, + number=5, + oneof="connection_password_options", + ) + password_secret_version: str = proto.Field( + proto.STRING, + number=6, + oneof="connection_password_options", + ) + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + connection_url: str = proto.Field( + proto.STRING, + number=2, + ) + username: str = proto.Field( + proto.STRING, + number=3, + ) + + +class GoldengateElasticsearchConnectionProperties(proto.Message): + r"""The properties of GoldengateElasticsearchConnection. + + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + + Attributes: + password (str): + Optional. Input only. The password Oracle + Goldengate uses for Elastic Search connection in + plain text. + + This field is a member of `oneof`_ ``connection_password_options``. + password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the password Oracle Goldengate uses for Elastic + Search connection. Format: + + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``connection_password_options``. + technology_type (str): + Optional. The technology type of + ElasticsearchConnection. + servers (str): + Optional. Comma separated list of + Elasticsearch server addresses, specified as + host:port entries, where :port is optional. If + port is not specified, it defaults to 9200. + Example: + + "server1.example.com:4000,server2.example.com:4000". + security_protocol (google.cloud.oracledatabase_v1.types.GoldengateElasticsearchConnectionProperties.ElasticsearchSecurityProtocol): + Optional. Security protocol for + Elasticsearch. + authentication_type (google.cloud.oracledatabase_v1.types.GoldengateElasticsearchConnectionProperties.ElasticsearchAuthenticationType): + Optional. Authentication type for + Elasticsearch. + username (str): + Optional. The username Oracle Goldengate uses + to connect the associated system of the given + technology. + fingerprint (str): + Optional. Fingerprint required by TLS + security protocol. Eg.: + '6152b2dfbff200f973c5074a5b91d06ab3b472c07c09a1ea57bb7fd406cdce9c' + """ + + class ElasticsearchSecurityProtocol(proto.Enum): + r"""Enum for Security protocol for Elasticsearch. + + Values: + ELASTICSEARCH_SECURITY_PROTOCOL_UNSPECIFIED (0): + Security protocol not specified. + PLAIN (1): + Plain text communication. + TLS (2): + Transport Layer Security. + """ + + ELASTICSEARCH_SECURITY_PROTOCOL_UNSPECIFIED = 0 + PLAIN = 1 + TLS = 2 + + class ElasticsearchAuthenticationType(proto.Enum): + r"""Enum for Authentication type for Elasticsearch. + + Values: + ELASTICSEARCH_AUTHENTICATION_TYPE_UNSPECIFIED (0): + Authentication type not specified. + NONE (1): + No authentication. + BASIC (2): + Basic authentication. + """ + + ELASTICSEARCH_AUTHENTICATION_TYPE_UNSPECIFIED = 0 + NONE = 1 + BASIC = 2 + + password: str = proto.Field( + proto.STRING, + number=8, + oneof="connection_password_options", + ) + password_secret_version: str = proto.Field( + proto.STRING, + number=9, + oneof="connection_password_options", + ) + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + servers: str = proto.Field( + proto.STRING, + number=2, + ) + security_protocol: ElasticsearchSecurityProtocol = proto.Field( + proto.ENUM, + number=3, + enum=ElasticsearchSecurityProtocol, + ) + authentication_type: ElasticsearchAuthenticationType = proto.Field( + proto.ENUM, + number=4, + enum=ElasticsearchAuthenticationType, + ) + username: str = proto.Field( + proto.STRING, + number=5, + ) + fingerprint: str = proto.Field( + proto.STRING, + number=7, + ) + + +class GoldengateAmazonKinesisConnectionProperties(proto.Message): + r"""The properties of GoldengateAmazonKinesisConnection. + + Attributes: + technology_type (str): + Optional. The technology type of + AmazonKinesisConnection. + access_key_id (str): + Optional. Access key ID to access the Amazon + Kinesis. + secret_access_key_secret (str): + Optional. Secret access key to access the + Amazon Kinesis. + endpoint (str): + Optional. The endpoint URL of the Amazon + Kinesis service. e.g.: + 'https://kinesis.us-east-1.amazonaws.com' If not + provided, Goldengate will default to + 'https://kinesis..amazonaws.com'. + aws_region (str): + Optional. The name of the AWS region. + If not provided, Goldengate will default to + 'us-west-1'. + """ + + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + access_key_id: str = proto.Field( + proto.STRING, + number=2, + ) + secret_access_key_secret: str = proto.Field( + proto.STRING, + number=3, + ) + endpoint: str = proto.Field( + proto.STRING, + number=4, + ) + aws_region: str = proto.Field( + proto.STRING, + number=5, + ) + + +class GoldengateDb2ConnectionProperties(proto.Message): + r"""The properties of GoldengateDb2Connection. + + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + + Attributes: + password (str): + Optional. Input only. The password Oracle + Goldengate uses for Db2 connection in plain + text. + + This field is a member of `oneof`_ ``connection_password_options``. + password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the password Oracle Goldengate uses for Db2 + connection. Format: + + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``connection_password_options``. + technology_type (str): + Optional. The technology type of + Db2Connection. + host (str): + Optional. The name or address of a host. + port (int): + Optional. The port of an endpoint usually + specified for a connection. + database (str): + Optional. The name of the database. + username (str): + Optional. The username Oracle Goldengate uses + to connect to the DB2 database. + security_protocol (google.cloud.oracledatabase_v1.types.GoldengateDb2ConnectionProperties.Db2SecurityProtocol): + Optional. Security protocol for the DB2 + database. + additional_attributes (MutableSequence[google.cloud.oracledatabase_v1.types.NameValuePair]): + Optional. An array of name-value pair + attribute entries. Used as additional parameters + in connection string. + ssl_client_keystoredb_file (str): + Optional. The keystore file created at the + client containing the server certificate / CA + root certificate. Not supported for IBM Db2 for + i. + ssl_client_keystash_file (str): + Optional. The keystash file which contains + the encrypted password to the key database file. + Not supported for IBM Db2 for i. + ssl_server_certificate_file (str): + Optional. The file which contains the + self-signed server certificate / Certificate + Authority (CA) certificate. + """ + + class Db2SecurityProtocol(proto.Enum): + r"""Enum for Security protocol for the DB2 database. + + Values: + DB2_SECURITY_PROTOCOL_UNSPECIFIED (0): + Security protocol not specified. + PLAIN (1): + Plain text communication. + TLS (2): + Transport Layer Security. + """ + + DB2_SECURITY_PROTOCOL_UNSPECIFIED = 0 + PLAIN = 1 + TLS = 2 + + password: str = proto.Field( + proto.STRING, + number=12, + oneof="connection_password_options", + ) + password_secret_version: str = proto.Field( + proto.STRING, + number=13, + oneof="connection_password_options", + ) + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + host: str = proto.Field( + proto.STRING, + number=2, + ) + port: int = proto.Field( + proto.INT32, + number=3, + ) + database: str = proto.Field( + proto.STRING, + number=4, + ) + username: str = proto.Field( + proto.STRING, + number=5, + ) + security_protocol: Db2SecurityProtocol = proto.Field( + proto.ENUM, + number=6, + enum=Db2SecurityProtocol, + ) + additional_attributes: MutableSequence["NameValuePair"] = proto.RepeatedField( + proto.MESSAGE, + number=8, + message="NameValuePair", + ) + ssl_client_keystoredb_file: str = proto.Field( + proto.STRING, + number=9, + ) + ssl_client_keystash_file: str = proto.Field( + proto.STRING, + number=10, + ) + ssl_server_certificate_file: str = proto.Field( + proto.STRING, + number=11, + ) + + +class GoldengateRedisConnectionProperties(proto.Message): + r"""The properties of GoldengateRedisConnection. + + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + + Attributes: + password (str): + Optional. Input only. The password Oracle + Goldengate uses for Redis connection in plain + text. + + This field is a member of `oneof`_ ``connection_password_options``. + password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the password Oracle Goldengate uses for Redis + connection. Format: + + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``connection_password_options``. + trust_store_password (str): + Optional. Input only. The TrustStore password + in plain text. + + This field is a member of `oneof`_ ``trust_store_password_options``. + trust_store_password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the TrustStore password. Format: + + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``trust_store_password_options``. + key_store_password (str): + Optional. Input only. The KeyStore password + in plain text. + + This field is a member of `oneof`_ ``key_store_password_options``. + key_store_password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the KeyStore password. Format: + + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``key_store_password_options``. + technology_type (str): + Optional. The technology type of + RedisConnection. + servers (str): + Optional. Comma separated list of Redis + server addresses, specified as host:port + entries, where :port is optional. If port is not + specified, it defaults to 6379. Example: + + "server1.example.com:6379,server2.example.com:6379". + security_protocol (google.cloud.oracledatabase_v1.types.GoldengateRedisConnectionProperties.RedisSecurityProtocol): + Optional. Security protocol for Redis. + authentication_type (google.cloud.oracledatabase_v1.types.GoldengateRedisConnectionProperties.RedisAuthenticationType): + Optional. Authentication type for Redis. + username (str): + Optional. The username Oracle Goldengate uses + to connect the associated system of the given + technology. + redis_cluster_id (str): + Optional. The OCID of the Redis cluster. + trust_store_file (str): + Optional. The base64 encoded content of the + TrustStore file. + key_store_file (str): + Optional. The base64 encoded content of the + KeyStore file. + """ + + class RedisSecurityProtocol(proto.Enum): + r"""Enum for Security protocol for Redis. + + Values: + REDIS_SECURITY_PROTOCOL_UNSPECIFIED (0): + Security protocol not specified. + PLAIN (1): + Plain text communication. + TLS (2): + Transport Layer Security. + MTLS (3): + Mutual Transport Layer Security. + """ + + REDIS_SECURITY_PROTOCOL_UNSPECIFIED = 0 + PLAIN = 1 + TLS = 2 + MTLS = 3 + + class RedisAuthenticationType(proto.Enum): + r"""Enum for Authentication type for Redis. + + Values: + REDIS_AUTHENTICATION_TYPE_UNSPECIFIED (0): + Authentication type not specified. + NONE (1): + No authentication. + BASIC (2): + Basic authentication. + """ + + REDIS_AUTHENTICATION_TYPE_UNSPECIFIED = 0 + NONE = 1 + BASIC = 2 + + password: str = proto.Field( + proto.STRING, + number=12, + oneof="connection_password_options", + ) + password_secret_version: str = proto.Field( + proto.STRING, + number=15, + oneof="connection_password_options", + ) + trust_store_password: str = proto.Field( + proto.STRING, + number=13, + oneof="trust_store_password_options", + ) + trust_store_password_secret_version: str = proto.Field( + proto.STRING, + number=16, + oneof="trust_store_password_options", + ) + key_store_password: str = proto.Field( + proto.STRING, + number=14, + oneof="key_store_password_options", + ) + key_store_password_secret_version: str = proto.Field( + proto.STRING, + number=17, + oneof="key_store_password_options", + ) + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + servers: str = proto.Field( + proto.STRING, + number=2, + ) + security_protocol: RedisSecurityProtocol = proto.Field( + proto.ENUM, + number=3, + enum=RedisSecurityProtocol, + ) + authentication_type: RedisAuthenticationType = proto.Field( + proto.ENUM, + number=4, + enum=RedisAuthenticationType, + ) + username: str = proto.Field( + proto.STRING, + number=5, + ) + redis_cluster_id: str = proto.Field( + proto.STRING, + number=7, + ) + trust_store_file: str = proto.Field( + proto.STRING, + number=8, + ) + key_store_file: str = proto.Field( + proto.STRING, + number=10, + ) + + +class GoldengateDatabricksConnectionProperties(proto.Message): + r"""The properties of GoldengateDatabricksConnection. + + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + + Attributes: + password (str): + Optional. Input only. The password used to + connect to Databricks in plain text. + + This field is a member of `oneof`_ ``connection_password_options``. + password_secret_version (str): + Optional. Input only. The resource name of a + secret version in Secret Manager which contains + the password used to connect to Databricks. + Format: + projects/{project}/secrets/{secret}/versions/{version}. + + This field is a member of `oneof`_ ``connection_password_options``. + technology_type (str): + Optional. The technology type of + DatabricksConnection. + authentication_type (google.cloud.oracledatabase_v1.types.GoldengateDatabricksConnectionProperties.DatabricksAuthenticationType): + Optional. Authentication type for Databricks. + connection_url (str): + Optional. Connection URL. + e.g.: + + 'jdbc:databricks://adb-33934.4.azuredatabricks.net:443/default;transportMode=http;ssl=1;httpPath=sql/protocolv1/o/3393########44/0##3-7-hlrb' + client_id (str): + Optional. OAuth client id, only applicable for + authentication_type == OAUTH_M2M + client_secret (str): + Optional. OAuth client secret, only applicable for + authentication_type == OAUTH_M2M + storage_credential (str): + Optional. External storage credential name to + access files on object storage such as ADLS + Gen2, S3 or Cloud Storage. + """ + + class DatabricksAuthenticationType(proto.Enum): + r"""Enum for authentication type for Databricks. + + Values: + DATABRICKS_AUTHENTICATION_TYPE_UNSPECIFIED (0): + Authentication type not specified. + PERSONAL_ACCESS_TOKEN (1): + Personal access token authentication. + OAUTH_M2M (2): + OAuth M2M authentication. + """ + + DATABRICKS_AUTHENTICATION_TYPE_UNSPECIFIED = 0 + PERSONAL_ACCESS_TOKEN = 1 + OAUTH_M2M = 2 + + password: str = proto.Field( + proto.STRING, + number=8, + oneof="connection_password_options", + ) + password_secret_version: str = proto.Field( + proto.STRING, + number=9, + oneof="connection_password_options", + ) + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + authentication_type: DatabricksAuthenticationType = proto.Field( + proto.ENUM, + number=2, + enum=DatabricksAuthenticationType, + ) + connection_url: str = proto.Field( + proto.STRING, + number=3, + ) + client_id: str = proto.Field( + proto.STRING, + number=5, + ) + client_secret: str = proto.Field( + proto.STRING, + number=6, + ) + storage_credential: str = proto.Field( + proto.STRING, + number=7, + ) + + +class GoldengateGooglePubsubConnectionProperties(proto.Message): + r"""The properties of GoldengateGooglePubsubConnection. + + Attributes: + technology_type (str): + Optional. The technology type of + GooglePubsubConnection. + service_account_key_file (str): + Optional. The base64 encoded content of the + service account key file containing the + credentials required to use Google Pub/Sub. + """ + + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + service_account_key_file: str = proto.Field( + proto.STRING, + number=2, + ) + + +class GoldengateMicrosoftFabricConnectionProperties(proto.Message): + r"""The properties of GoldengateMicrosoftFabricConnection. + + Attributes: + technology_type (str): + Optional. The technology type of + MicrosoftFabricConnection. + tenant_id (str): + Optional. Azure tenant ID of the application. + client_id (str): + Optional. Azure client ID of the application. + client_secret (str): + Optional. Client secret associated with the + client id. + endpoint (str): + Optional. Optional Microsoft Fabric service + endpoint. Default value: + https://onelake.dfs.fabric.microsoft.com + """ + + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + tenant_id: str = proto.Field( + proto.STRING, + number=2, + ) + client_id: str = proto.Field( + proto.STRING, + number=3, + ) + client_secret: str = proto.Field( + proto.STRING, + number=4, + ) + endpoint: str = proto.Field( + proto.STRING, + number=5, + ) + + +class GoldengateOracleAIDataPlatformConnectionProperties(proto.Message): + r"""The properties of GoldengateOracleAIDataPlatformConnection. + + Attributes: + technology_type (str): + Optional. The technology type of + OracleAiDataPlatformConnection. + connection_url (str): + Optional. Connection URL. It must start with + 'jdbc:spark://' + tenancy_id (str): + Optional. The OCID of the related OCI + tenancy. + region (str): + Optional. The name of the region. e.g.: + us-ashburn-1 + user_id (str): + Optional. The OCID of the OCI user who will + access. + private_key_file (str): + Optional. The content of the private key file + (PEM file) corresponding to the API key of the + fingerprint. + private_key_passphrase_secret (str): + Optional. The passphrase of the private key. + public_key_fingerprint (str): + Optional. The fingerprint of the API Key of the user + specified by the user_id. + use_resource_principal (bool): + Optional. Specifies that the user intends to + authenticate to the instance using a resource + principal. + """ + + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + connection_url: str = proto.Field( + proto.STRING, + number=2, + ) + tenancy_id: str = proto.Field( + proto.STRING, + number=3, + ) + region: str = proto.Field( + proto.STRING, + number=4, + ) + user_id: str = proto.Field( + proto.STRING, + number=5, + ) + private_key_file: str = proto.Field( + proto.STRING, + number=6, + ) + private_key_passphrase_secret: str = proto.Field( + proto.STRING, + number=7, + ) + public_key_fingerprint: str = proto.Field( + proto.STRING, + number=8, + ) + use_resource_principal: bool = proto.Field( + proto.BOOL, + number=9, + ) + + +class GlueIcebergCatalog(proto.Message): + r"""The Glue Iceberg catalog. + + Attributes: + glue_id (str): + Required. The catalog ID of Glue. + """ + + glue_id: str = proto.Field( + proto.STRING, + number=1, + ) + + +class NessieIcebergCatalog(proto.Message): + r"""The Nessie Iceberg catalog. + + Attributes: + uri (str): + Required. The Nessie uri. + branch (str): + Required. The Nessie branch. + """ + + uri: str = proto.Field( + proto.STRING, + number=1, + ) + branch: str = proto.Field( + proto.STRING, + number=2, + ) + + +class PolarisIcebergCatalog(proto.Message): + r"""The Polaris Iceberg catalog. + + Attributes: + uri (str): + Required. The Polaris uri. + polaris_catalog (str): + Required. The catalog name within Polaris. + client_id (str): + Required. The Polaris client ID. + principal_role (str): + Required. The Polaris principal role. + client_secret (str): + Optional. The Polaris client secret. + """ + + uri: str = proto.Field( + proto.STRING, + number=1, + ) + polaris_catalog: str = proto.Field( + proto.STRING, + number=2, + ) + client_id: str = proto.Field( + proto.STRING, + number=3, + ) + principal_role: str = proto.Field( + proto.STRING, + number=4, + ) + client_secret: str = proto.Field( + proto.STRING, + number=5, + ) + + +class RestIcebergCatalog(proto.Message): + r"""The REST Iceberg catalog. + + Attributes: + uri (str): + Required. The REST uri. + properties (str): + Optional. The base64 encoded content of the + configuration file containing additional + properties for the REST catalog. + """ + + uri: str = proto.Field( + proto.STRING, + number=1, + ) + properties: str = proto.Field( + proto.STRING, + number=2, + ) + + +class IcebergCatalog(proto.Message): + r"""The Iceberg catalog details. + + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + + Attributes: + glue_iceberg_catalog (google.cloud.oracledatabase_v1.types.GlueIcebergCatalog): + The Glue Iceberg catalog. + + This field is a member of `oneof`_ ``catalog_details``. + nessie_iceberg_catalog (google.cloud.oracledatabase_v1.types.NessieIcebergCatalog): + The Nessie Iceberg catalog. + + This field is a member of `oneof`_ ``catalog_details``. + polaris_iceberg_catalog (google.cloud.oracledatabase_v1.types.PolarisIcebergCatalog): + The Polaris Iceberg catalog. + + This field is a member of `oneof`_ ``catalog_details``. + rest_iceberg_catalog (google.cloud.oracledatabase_v1.types.RestIcebergCatalog): + The REST Iceberg catalog. + + This field is a member of `oneof`_ ``catalog_details``. + catalog_type (google.cloud.oracledatabase_v1.types.IcebergCatalog.CatalogType): + Required. The type of Iceberg catalog. + """ + + class CatalogType(proto.Enum): + r"""The type of Iceberg catalog. + + Values: + CATALOG_TYPE_UNSPECIFIED (0): + Catalog type not specified. + GLUE (1): + Glue catalog. + HADOOP (2): + Hadoop catalog. + NESSIE (3): + Nessie catalog. + POLARIS (4): + Polaris catalog. + REST (5): + REST catalog. + """ + + CATALOG_TYPE_UNSPECIFIED = 0 + GLUE = 1 + HADOOP = 2 + NESSIE = 3 + POLARIS = 4 + REST = 5 + + glue_iceberg_catalog: "GlueIcebergCatalog" = proto.Field( + proto.MESSAGE, + number=1, + oneof="catalog_details", + message="GlueIcebergCatalog", + ) + nessie_iceberg_catalog: "NessieIcebergCatalog" = proto.Field( + proto.MESSAGE, + number=3, + oneof="catalog_details", + message="NessieIcebergCatalog", + ) + polaris_iceberg_catalog: "PolarisIcebergCatalog" = proto.Field( + proto.MESSAGE, + number=4, + oneof="catalog_details", + message="PolarisIcebergCatalog", + ) + rest_iceberg_catalog: "RestIcebergCatalog" = proto.Field( + proto.MESSAGE, + number=5, + oneof="catalog_details", + message="RestIcebergCatalog", + ) + catalog_type: CatalogType = proto.Field( + proto.ENUM, + number=6, + enum=CatalogType, + ) + + +class AmazonS3IcebergStorage(proto.Message): + r"""The Amazon S3 Iceberg storage. + + Attributes: + scheme_type (google.cloud.oracledatabase_v1.types.AmazonS3IcebergStorage.SchemeType): + Required. The scheme type of Amazon S3. + access_key_id (str): + Required. The access key ID of Amazon S3. + region (str): + Required. The region of Amazon S3. + bucket (str): + Required. The bucket of Amazon S3. + endpoint (str): + Optional. The endpoint of Amazon S3. + secret_access_key_secret (str): + Optional. The secret access key of Amazon S3. + """ + + class SchemeType(proto.Enum): + r"""Enum for scheme type of Amazon S3. + + Values: + SCHEME_TYPE_UNSPECIFIED (0): + Scheme type not specified. + S3 (1): + S3 scheme. + S3A (2): + S3A scheme. + """ + + SCHEME_TYPE_UNSPECIFIED = 0 + S3 = 1 + S3A = 2 + + scheme_type: SchemeType = proto.Field( + proto.ENUM, + number=1, + enum=SchemeType, + ) + access_key_id: str = proto.Field( + proto.STRING, + number=2, + ) + region: str = proto.Field( + proto.STRING, + number=3, + ) + bucket: str = proto.Field( + proto.STRING, + number=4, + ) + endpoint: str = proto.Field( + proto.STRING, + number=5, + ) + secret_access_key_secret: str = proto.Field( + proto.STRING, + number=6, + ) + + +class GoogleCloudStorageIcebergStorage(proto.Message): + r"""The Google Cloud Storage Iceberg storage. + + Attributes: + bucket (str): + Required. The bucket of Google Cloud Storage. + project_id (str): + Required. The project ID of Google Cloud + Storage. + service_account_key_file (str): + Optional. The base64 encoded content of the + service account key file of Google Cloud + Storage. + """ + + bucket: str = proto.Field( + proto.STRING, + number=1, + ) + project_id: str = proto.Field( + proto.STRING, + number=2, + ) + service_account_key_file: str = proto.Field( + proto.STRING, + number=3, + ) + + +class AzureDataLakeStorageIcebergStorage(proto.Message): + r"""The Azure Data Lake Storage Iceberg storage. + + Attributes: + azure_account (str): + Required. The account of Azure Data Lake + Storage. + container (str): + Required. The container of Azure Data Lake + Storage. + account_key_secret (str): + Optional. The account key of Azure Data Lake + Storage. + endpoint (str): + Optional. The endpoint of Azure Data Lake + Storage. + """ + + azure_account: str = proto.Field( + proto.STRING, + number=1, + ) + container: str = proto.Field( + proto.STRING, + number=2, + ) + account_key_secret: str = proto.Field( + proto.STRING, + number=3, + ) + endpoint: str = proto.Field( + proto.STRING, + number=4, + ) + + +class IcebergStorage(proto.Message): + r"""The Iceberg storage details. + + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + + Attributes: + amazon_s3_iceberg_storage (google.cloud.oracledatabase_v1.types.AmazonS3IcebergStorage): + The Amazon S3 Iceberg storage. + + This field is a member of `oneof`_ ``storage_details``. + google_cloud_storage_iceberg_storage (google.cloud.oracledatabase_v1.types.GoogleCloudStorageIcebergStorage): + The Google Cloud Storage Iceberg storage. + + This field is a member of `oneof`_ ``storage_details``. + azure_data_lake_storage_iceberg_storage (google.cloud.oracledatabase_v1.types.AzureDataLakeStorageIcebergStorage): + The Azure Data Lake Storage Iceberg storage. + + This field is a member of `oneof`_ ``storage_details``. + storage_type (google.cloud.oracledatabase_v1.types.IcebergStorage.StorageType): + Required. The type of Iceberg storage. + """ + + class StorageType(proto.Enum): + r"""The type of Iceberg storage. + + Values: + STORAGE_TYPE_UNSPECIFIED (0): + Storage type not specified. + AMAZON_S3 (1): + Amazon S3 storage. + GOOGLE_CLOUD_STORAGE (2): + Google Cloud Storage storage. + AZURE_DATA_LAKE_STORAGE (3): + Azure Data Lake Storage storage. + """ + + STORAGE_TYPE_UNSPECIFIED = 0 + AMAZON_S3 = 1 + GOOGLE_CLOUD_STORAGE = 2 + AZURE_DATA_LAKE_STORAGE = 3 + + amazon_s3_iceberg_storage: "AmazonS3IcebergStorage" = proto.Field( + proto.MESSAGE, + number=1, + oneof="storage_details", + message="AmazonS3IcebergStorage", + ) + google_cloud_storage_iceberg_storage: "GoogleCloudStorageIcebergStorage" = ( + proto.Field( + proto.MESSAGE, + number=2, + oneof="storage_details", + message="GoogleCloudStorageIcebergStorage", + ) + ) + azure_data_lake_storage_iceberg_storage: "AzureDataLakeStorageIcebergStorage" = ( + proto.Field( + proto.MESSAGE, + number=3, + oneof="storage_details", + message="AzureDataLakeStorageIcebergStorage", + ) + ) + storage_type: StorageType = proto.Field( + proto.ENUM, + number=4, + enum=StorageType, + ) + + +class GoldengateIcebergConnectionProperties(proto.Message): + r"""The properties of GoldengateIcebergConnection. + + Attributes: + technology_type (str): + Required. The technology type of Iceberg + connection. + catalog (google.cloud.oracledatabase_v1.types.IcebergCatalog): + Required. The Iceberg catalog. + storage (google.cloud.oracledatabase_v1.types.IcebergStorage): + Required. The Iceberg storage. + """ + + technology_type: str = proto.Field( + proto.STRING, + number=1, + ) + catalog: "IcebergCatalog" = proto.Field( + proto.MESSAGE, + number=2, + message="IcebergCatalog", + ) + storage: "IcebergStorage" = proto.Field( + proto.MESSAGE, + number=3, + message="IcebergStorage", + ) + + +class CreateGoldengateConnectionRequest(proto.Message): + r"""The request for ``GoldengateConnection.Create``. + + Attributes: + parent (str): + Required. The value for parent of the + GoldengateConnection in the following format: + projects/{project}/locations/{location}. + goldengate_connection_id (str): + Required. The ID of the GoldengateConnection to create. This + value is restricted to + (^\ `a-z <[a-z0-9-]{0,61}[a-z0-9]>`__?$) and must be a + maximum of 63 characters in length. The value must start + with a letter and end with a letter or a number. + goldengate_connection (google.cloud.oracledatabase_v1.types.GoldengateConnection): + Required. The resource being created. + request_id (str): + Optional. An optional request ID to identify + requests. Specify a unique request ID so that if + you must retry your request, the server will + know to ignore the request if it has already + been completed. The server will guarantee that + for at least 60 minutes since the first request. + + For example, consider a situation where you make + an initial request and the request times out. If + you make the request again with the same request + ID, the server can check if original operation + with the same request ID was received, and if + so, will ignore the second request. This + prevents clients from accidentally creating + duplicate commitments. + + The request ID must be a valid UUID with the + exception that zero UUID is not supported + (00000000-0000-0000-0000-000000000000). + """ + + parent: str = proto.Field( + proto.STRING, + number=1, + ) + goldengate_connection_id: str = proto.Field( + proto.STRING, + number=2, + ) + goldengate_connection: "GoldengateConnection" = proto.Field( + proto.MESSAGE, + number=3, + message="GoldengateConnection", + ) + request_id: str = proto.Field( + proto.STRING, + number=4, + ) + + +class DeleteGoldengateConnectionRequest(proto.Message): + r"""The request for ``GoldengateConnection.Delete``. + + Attributes: + name (str): + Required. The name of the GoldengateConnection in the + following format: + projects/{project}/locations/{location}/goldengateConnections/{goldengate_connection}. + request_id (str): + Optional. An optional ID to identify the + request. This value is used to identify + duplicate requests. If you make a request with + the same request ID and the original request is + still in progress or completed, the server + ignores the second request. This prevents + clients from accidentally creating duplicate + commitments. + + The request ID must be a valid UUID with the + exception that zero UUID is not supported + (00000000-0000-0000-0000-000000000000). + """ + + name: str = proto.Field( + proto.STRING, + number=1, + ) + request_id: str = proto.Field( + proto.STRING, + number=2, + ) + + +class GetGoldengateConnectionRequest(proto.Message): + r"""The request for ``GoldengateConnection.Get``. + + Attributes: + name (str): + Required. The name of the GoldengateConnection in the + following format: + projects/{project}/locations/{location}/goldengateConnections/{goldengate_connection}. + """ + + name: str = proto.Field( + proto.STRING, + number=1, + ) + + +class ListGoldengateConnectionsRequest(proto.Message): + r"""The request for ``GoldengateConnection.List``. + + Attributes: + parent (str): + Required. The parent value for + GoldengateConnections in the following format: + projects/{project}/locations/{location}. + page_size (int): + Optional. The maximum number of items to + return. If unspecified, at most 50 + GoldengateConnections will be returned. The + maximum value is 1000; values above 1000 will be + coerced to 1000. + page_token (str): + Optional. A page token, received from a + previous ListGoldengateConnections call. Provide + this to retrieve the subsequent page. + filter (str): + Optional. An expression for filtering the + results of the request. + order_by (str): + Optional. An expression for ordering the + results of the request. + """ + + parent: str = proto.Field( + proto.STRING, + number=1, + ) + page_size: int = proto.Field( + proto.INT32, + number=2, + ) + page_token: str = proto.Field( + proto.STRING, + number=3, + ) + filter: str = proto.Field( + proto.STRING, + number=4, + ) + order_by: str = proto.Field( + proto.STRING, + number=5, + ) + + +class ListGoldengateConnectionsResponse(proto.Message): + r"""The response for ``GoldengateConnection.List``. + + Attributes: + goldengate_connections (MutableSequence[google.cloud.oracledatabase_v1.types.GoldengateConnection]): + The list of GoldengateConnections. + next_page_token (str): + A token identifying a page of results the + server should return. + unreachable (MutableSequence[str]): + Optional. Locations that could not be + reached. + """ + + @property + def raw_page(self): + return self + + goldengate_connections: MutableSequence["GoldengateConnection"] = ( + proto.RepeatedField( + proto.MESSAGE, + number=1, + message="GoldengateConnection", + ) + ) + next_page_token: str = proto.Field( + proto.STRING, + number=2, + ) + unreachable: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=3, + ) + + +class NameValuePair(proto.Message): + r"""A name-value pair representing an attribute entry usable in a + list of attributes. + + Attributes: + key (str): + Required. The name of the property entry. + value (str): + Required. The value of the property entry. + """ + + key: str = proto.Field( + proto.STRING, + number=1, + ) + value: str = proto.Field( + proto.STRING, + number=2, + ) + + +class KafkaBootstrapServer(proto.Message): + r"""Represents a Kafka bootstrap server with host name, optional + port defaults to 9092, and an optional private ip. + + Attributes: + host (str): + Required. The name or address of a host. + port (int): + Optional. The port of an endpoint usually + specified for a connection. + private_ip_address (str): + Optional. The private IP address of the + connection's endpoint in the customer's VCN, + typically a database endpoint or a big data + endpoint (e.g. Kafka bootstrap server). In case + the privateIp is provided, the subnetId must + also be provided. In case the privateIp (and the + subnetId) is not provided it is assumed the + datasource is publicly accessible. In case the + connection is accessible only privately, the + lack of privateIp will result in not being able + to access the connection. + """ + + host: str = proto.Field( + proto.STRING, + number=1, + ) + port: int = proto.Field( + proto.INT32, + number=2, + ) + private_ip_address: str = proto.Field( + proto.STRING, + number=3, + ) + + +__all__ = tuple(sorted(__protobuf__.manifest)) diff --git a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_connection_assignment.py b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_connection_assignment.py new file mode 100644 index 000000000000..723c9718ac94 --- /dev/null +++ b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_connection_assignment.py @@ -0,0 +1,496 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +from __future__ import annotations + +from typing import MutableMapping, MutableSequence + +import google.protobuf.timestamp_pb2 as timestamp_pb2 # type: ignore +import proto # type: ignore + +__protobuf__ = proto.module( + package="google.cloud.oracledatabase.v1", + manifest={ + "GoldengateConnectionAssignment", + "GoldengateConnectionAssignmentProperties", + "ListGoldengateConnectionAssignmentsRequest", + "ListGoldengateConnectionAssignmentsResponse", + "GetGoldengateConnectionAssignmentRequest", + "CreateGoldengateConnectionAssignmentRequest", + "TestGoldengateConnectionAssignmentRequest", + "TestConnectionAssignmentError", + "TestGoldengateConnectionAssignmentResponse", + "DeleteGoldengateConnectionAssignmentRequest", + }, +) + + +class GoldengateConnectionAssignment(proto.Message): + r"""Represents the metadata of a Goldengate Connection + Assignment. + + Attributes: + name (str): + Identifier. The name of the GoldengateConnectionAssignment + resource in the following format: + projects/{project}/locations/{region}/goldengateConnectionAssignments/{goldengate_connection_assignment} + properties (google.cloud.oracledatabase_v1.types.GoldengateConnectionAssignmentProperties): + Required. The properties of the + GoldengateConnectionAssignment. + create_time (google.protobuf.timestamp_pb2.Timestamp): + Output only. The time when the connection + assignment was created. + labels (MutableMapping[str, str]): + Optional. The labels or tags associated with + the GoldengateConnectionAssignment. + display_name (str): + Optional. The display name for the + GoldengateConnectionAssignment. + entitlement_id (str): + Output only. The OCID of the entitlement + linked to this resource. + """ + + name: str = proto.Field( + proto.STRING, + number=1, + ) + properties: "GoldengateConnectionAssignmentProperties" = proto.Field( + proto.MESSAGE, + number=2, + message="GoldengateConnectionAssignmentProperties", + ) + create_time: timestamp_pb2.Timestamp = proto.Field( + proto.MESSAGE, + number=3, + message=timestamp_pb2.Timestamp, + ) + labels: MutableMapping[str, str] = proto.MapField( + proto.STRING, + proto.STRING, + number=4, + ) + display_name: str = proto.Field( + proto.STRING, + number=5, + ) + entitlement_id: str = proto.Field( + proto.STRING, + number=6, + ) + + +class GoldengateConnectionAssignmentProperties(proto.Message): + r"""The properties of a GoldengateConnectionAssignment. + + Attributes: + ocid (str): + Output only. The + `OCID `__ + of the connection assignment being referenced. + goldengate_connection (str): + Required. The GoldengateConnection resource to be assigned. + Format: + projects/{project}/locations/{location}/goldengateConnections/{goldengate_connection} + goldengate_deployment (str): + Required. The GoldenGateDeployment to assign the connection + to. Format: + projects/{project}/locations/{location}/goldengateDeployments/{goldengate_deployment} + alias (str): + Output only. Credential store alias. + state (google.cloud.oracledatabase_v1.types.GoldengateConnectionAssignmentProperties.State): + Output only. The lifecycle state of the + connection assignment. + """ + + class State(proto.Enum): + r"""Possible lifecycle states for connection assignments. + + Values: + STATE_UNSPECIFIED (0): + Lifecycle state is unspecified. + CREATING (1): + Connection assignment is being created. + ACTIVE (2): + Connection assignment is active. + FAILED (3): + Connection assignment failed. + UPDATING (4): + Connection assignment is being updated. + DELETING (5): + Connection assignment is being deleted. + """ + + STATE_UNSPECIFIED = 0 + CREATING = 1 + ACTIVE = 2 + FAILED = 3 + UPDATING = 4 + DELETING = 5 + + ocid: str = proto.Field( + proto.STRING, + number=1, + ) + goldengate_connection: str = proto.Field( + proto.STRING, + number=2, + ) + goldengate_deployment: str = proto.Field( + proto.STRING, + number=3, + ) + alias: str = proto.Field( + proto.STRING, + number=4, + ) + state: State = proto.Field( + proto.ENUM, + number=5, + enum=State, + ) + + +class ListGoldengateConnectionAssignmentsRequest(proto.Message): + r"""Request message for listing GoldengateConnectionAssignments. + + Attributes: + parent (str): + Required. The parent value for the + GoldengateConnectionAssignments. Format: + projects/{project}/locations/{location} + page_size (int): + Optional. The maximum number of + GoldengateConnectionAssignments to return. The + service may return fewer than this value. If + unspecified, at most 50 + GoldengateConnectionAssignments will be + returned. The maximum value is 1000; values + above 1000 will be coerced to 1000. + page_token (str): + Optional. A page token, received from a previous + ``ListGoldengateConnectionAssignments`` call. Provide this + to retrieve the subsequent page. + + When paginating, all other parameters provided to + ``ListGoldengateConnectionAssignments`` must match the call + that provided the page token. + filter (str): + Optional. A filter expression that filters + GoldengateConnectionAssignments listed in the + response. + order_by (str): + Optional. A comma-separated list of fields to + order by, sorted in ascending order. Use "DESC" + after a field name for descending. + """ + + parent: str = proto.Field( + proto.STRING, + number=1, + ) + page_size: int = proto.Field( + proto.INT32, + number=2, + ) + page_token: str = proto.Field( + proto.STRING, + number=3, + ) + filter: str = proto.Field( + proto.STRING, + number=4, + ) + order_by: str = proto.Field( + proto.STRING, + number=5, + ) + + +class ListGoldengateConnectionAssignmentsResponse(proto.Message): + r"""Response message for listing GoldengateConnectionAssignments. + + Attributes: + goldengate_connection_assignments (MutableSequence[google.cloud.oracledatabase_v1.types.GoldengateConnectionAssignment]): + The list of GoldengateConnectionAssignments. + next_page_token (str): + A token, which can be sent as ``page_token`` to retrieve the + next page. If this field is omitted, there are no subsequent + pages. + unreachable (MutableSequence[str]): + Unreachable locations when listing resources + across all locations using wildcard location + '-'. + """ + + @property + def raw_page(self): + return self + + goldengate_connection_assignments: MutableSequence[ + "GoldengateConnectionAssignment" + ] = proto.RepeatedField( + proto.MESSAGE, + number=1, + message="GoldengateConnectionAssignment", + ) + next_page_token: str = proto.Field( + proto.STRING, + number=2, + ) + unreachable: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=3, + ) + + +class GetGoldengateConnectionAssignmentRequest(proto.Message): + r"""Request message for getting a GoldengateConnectionAssignment. + + Attributes: + name (str): + Required. The name of the GoldengateConnectionAssignment to + retrieve. Format: + projects/{project}/locations/{location}/goldengateConnectionAssignments/{goldengate_connection_assignment} + """ + + name: str = proto.Field( + proto.STRING, + number=1, + ) + + +class CreateGoldengateConnectionAssignmentRequest(proto.Message): + r"""Request message for creating a + GoldengateConnectionAssignment. + + Attributes: + parent (str): + Required. The parent resource where this + GoldengateConnectionAssignment will be created. + Format: projects/{project}/locations/{location} + goldengate_connection_assignment_id (str): + Required. The ID of the + GoldengateConnectionAssignment to create. + goldengate_connection_assignment (google.cloud.oracledatabase_v1.types.GoldengateConnectionAssignment): + Required. The GoldengateConnectionAssignment + to create. + request_id (str): + Optional. An optional request ID to identify + requests. Specify a unique request ID so that if + you must retry your request, the server will + know to ignore the request if it has already + been completed. The server will guarantee that + for at least 60 minutes since the first request. + + For example, consider a situation where you make + an initial request and the request times out. If + you make the request again with the same request + ID, the server can check if original operation + with the same request ID was received, and if + so, will ignore the second request. This + prevents clients from accidentally creating + duplicate commitments. + + The request ID must be a valid UUID with the + exception that zero UUID is not supported + (00000000-0000-0000-0000-000000000000). + """ + + parent: str = proto.Field( + proto.STRING, + number=1, + ) + goldengate_connection_assignment_id: str = proto.Field( + proto.STRING, + number=2, + ) + goldengate_connection_assignment: "GoldengateConnectionAssignment" = proto.Field( + proto.MESSAGE, + number=3, + message="GoldengateConnectionAssignment", + ) + request_id: str = proto.Field( + proto.STRING, + number=4, + ) + + +class TestGoldengateConnectionAssignmentRequest(proto.Message): + r"""Request message for TestGoldengateConnectionAssignment. + + Attributes: + name (str): + Required. Name of the connection assignment for which to + test connection. + projects/{project}/locations/{region}/goldengateConnectionAssignments/{goldengate_connection_assignment} + type_ (google.cloud.oracledatabase_v1.types.TestGoldengateConnectionAssignmentRequest.TestType): + Optional. The type of the test of the + assigned connection. The only type actually + supported is DEFAULT. + """ + + class TestType(proto.Enum): + r"""The type of test to perform. + + Values: + TEST_TYPE_UNSPECIFIED (0): + The default value. This value is unused. + DEFAULT (1): + The default connection test. + """ + + TEST_TYPE_UNSPECIFIED = 0 + DEFAULT = 1 + + name: str = proto.Field( + proto.STRING, + number=1, + ) + type_: TestType = proto.Field( + proto.ENUM, + number=2, + enum=TestType, + ) + + +class TestConnectionAssignmentError(proto.Message): + r"""Error details for TestGoldengateConnectionAssignment. + + Attributes: + code (str): + A short error code that defines the error, + meant for programmatic parsing. + message (str): + A human-readable error message. + action (str): + The text describing the action required to + fix the issue. + issue (str): + The text describing the root cause of the + reported issue. + """ + + code: str = proto.Field( + proto.STRING, + number=1, + ) + message: str = proto.Field( + proto.STRING, + number=2, + ) + action: str = proto.Field( + proto.STRING, + number=3, + ) + issue: str = proto.Field( + proto.STRING, + number=4, + ) + + +class TestGoldengateConnectionAssignmentResponse(proto.Message): + r"""The result of the connectivity test performed between the + Goldengate deployment and the associated database / service. + + Attributes: + result_type (google.cloud.oracledatabase_v1.types.TestGoldengateConnectionAssignmentResponse.ResultType): + Type of the result i.e. Success, Failure or + Timeout. + error (google.cloud.oracledatabase_v1.types.TestConnectionAssignmentError): + Error details if test connection failed. + errors (MutableSequence[google.cloud.oracledatabase_v1.types.TestConnectionAssignmentError]): + List of test connection assignment error + objects. + """ + + class ResultType(proto.Enum): + r"""Type of the result. + + Values: + RESULT_TYPE_UNSPECIFIED (0): + Result type is unspecified. + SUCCEEDED (1): + Test connection succeeded. + FAILED (2): + Test connection failed. + TIMED_OUT (3): + Test connection timed out. + """ + + RESULT_TYPE_UNSPECIFIED = 0 + SUCCEEDED = 1 + FAILED = 2 + TIMED_OUT = 3 + + result_type: ResultType = proto.Field( + proto.ENUM, + number=1, + enum=ResultType, + ) + error: "TestConnectionAssignmentError" = proto.Field( + proto.MESSAGE, + number=2, + message="TestConnectionAssignmentError", + ) + errors: MutableSequence["TestConnectionAssignmentError"] = proto.RepeatedField( + proto.MESSAGE, + number=3, + message="TestConnectionAssignmentError", + ) + + +class DeleteGoldengateConnectionAssignmentRequest(proto.Message): + r"""Request message for deleting a + GoldengateConnectionAssignment. + + Attributes: + name (str): + Required. The name of the GoldengateConnectionAssignment to + delete. Format: + projects/{project}/locations/{location}/goldengateConnectionAssignments/{goldengate_connection_assignment} + request_id (str): + Optional. An optional request ID to identify + requests. Specify a unique request ID so that if + you must retry your request, the server will + know to ignore the request if it has already + been completed. The server will guarantee that + for at least 60 minutes after the first request. + + For example, consider a situation where you make + an initial request and the request times out. If + you make the request again with the same request + ID, the server can check if original operation + with the same request ID was received, and if + so, will ignore the second request. This + prevents clients from accidentally creating + duplicate commitments. + + The request ID must be a valid UUID with the + exception that zero UUID is not supported + (00000000-0000-0000-0000-000000000000). + """ + + name: str = proto.Field( + proto.STRING, + number=1, + ) + request_id: str = proto.Field( + proto.STRING, + number=2, + ) + + +__all__ = tuple(sorted(__protobuf__.manifest)) diff --git a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_connection_type.py b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_connection_type.py new file mode 100644 index 000000000000..9509e3f6e6ac --- /dev/null +++ b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_connection_type.py @@ -0,0 +1,266 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +from __future__ import annotations + +from typing import MutableMapping, MutableSequence + +import proto # type: ignore + +__protobuf__ = proto.module( + package="google.cloud.oracledatabase.v1", + manifest={ + "GoldengateConnectionType", + "GetGoldengateConnectionTypeRequest", + "ListGoldengateConnectionTypesRequest", + "ListGoldengateConnectionTypesResponse", + }, +) + + +class GoldengateConnectionType(proto.Message): + r"""Details of the Goldengate Connection Type resource. + + Attributes: + name (str): + Identifier. The name of the Goldengate Connection Type + resource with the format: + projects/{project}/locations/{region}/goldengateConnectionTypes/{goldengate_connection_type} + connection_type (google.cloud.oracledatabase_v1.types.GoldengateConnectionType.ConnectionType): + Output only. The connection type of the + Goldengate Connection Type resource. + technology_types (MutableSequence[str]): + Output only. The technology type of the + Goldengate Connection Type resource. + """ + + class ConnectionType(proto.Enum): + r"""The connection type of the Goldengate Connection Type + resource. + + Values: + CONNECTION_TYPE_UNSPECIFIED (0): + Default unspecified value. + GOLDENGATE (1): + Goldengate Connection Type category is + GOLDENGATE. + KAFKA (2): + Goldengate Connection Type category is KAFKA. + KAFKA_SCHEMA_REGISTRY (3): + Goldengate Connection Type category is + KAFKA_SCHEMA_REGISTRY. + MYSQL (4): + Goldengate Connection Type category is MYSQL. + JAVA_MESSAGE_SERVICE (5): + Goldengate Connection Type category is JAVA_MESSAGE_SERVICE. + MICROSOFT_SQLSERVER (6): + Goldengate Connection Type category is MICROSOFT_SQLSERVER. + OCI_OBJECT_STORAGE (7): + Goldengate Connection Type category is OCI_OBJECT_STORAGE. + ORACLE (8): + Goldengate Connection Type category is + ORACLE. + AZURE_DATA_LAKE_STORAGE (9): + Goldengate Connection Type category is + AZURE_DATA_LAKE_STORAGE. + POSTGRESQL (10): + Goldengate Connection Type category is + POSTGRESQL. + AZURE_SYNAPSE_ANALYTICS (11): + Goldengate Connection Type category is + AZURE_SYNAPSE_ANALYTICS. + SNOWFLAKE (12): + Goldengate Connection Type category is + SNOWFLAKE. + AMAZON_S3 (13): + Goldengate Connection Type category is AMAZON_S3. + HDFS (14): + Goldengate Connection Type category is HDFS. + ORACLE_AI_DATA_PLATFORM (15): + Goldengate Connection Type category is + ORACLE_AI_DATA_PLATFORM. + ORACLE_NOSQL (16): + Goldengate Connection Type category is ORACLE_NOSQL. + MONGODB (17): + Goldengate Connection Type category is + MONGODB. + AMAZON_KINESIS (18): + Goldengate Connection Type category is AMAZON_KINESIS. + AMAZON_REDSHIFT (19): + Goldengate Connection Type category is AMAZON_REDSHIFT. + DB2 (20): + Goldengate Connection Type category is DB2. + REDIS (21): + Goldengate Connection Type category is REDIS. + ELASTICSEARCH (22): + Goldengate Connection Type category is + ELASTICSEARCH. + GENERIC (23): + Goldengate Connection Type category is + GENERIC. + GOOGLE_CLOUD_STORAGE (24): + Goldengate Connection Type category is GOOGLE_CLOUD_STORAGE. + GOOGLE_BIGQUERY (25): + Goldengate Connection Type category is GOOGLE_BIGQUERY. + DATABRICKS (26): + Goldengate Connection Type category is + DATABRICKS. + GOOGLE_PUBSUB (27): + Goldengate Connection Type category is GOOGLE_PUBSUB. + MICROSOFT_FABRIC (28): + Goldengate Connection Type category is MICROSOFT_FABRIC. + ICEBERG (29): + Goldengate Connection Type category is + ICEBERG. + """ + + CONNECTION_TYPE_UNSPECIFIED = 0 + GOLDENGATE = 1 + KAFKA = 2 + KAFKA_SCHEMA_REGISTRY = 3 + MYSQL = 4 + JAVA_MESSAGE_SERVICE = 5 + MICROSOFT_SQLSERVER = 6 + OCI_OBJECT_STORAGE = 7 + ORACLE = 8 + AZURE_DATA_LAKE_STORAGE = 9 + POSTGRESQL = 10 + AZURE_SYNAPSE_ANALYTICS = 11 + SNOWFLAKE = 12 + AMAZON_S3 = 13 + HDFS = 14 + ORACLE_AI_DATA_PLATFORM = 15 + ORACLE_NOSQL = 16 + MONGODB = 17 + AMAZON_KINESIS = 18 + AMAZON_REDSHIFT = 19 + DB2 = 20 + REDIS = 21 + ELASTICSEARCH = 22 + GENERIC = 23 + GOOGLE_CLOUD_STORAGE = 24 + GOOGLE_BIGQUERY = 25 + DATABRICKS = 26 + GOOGLE_PUBSUB = 27 + MICROSOFT_FABRIC = 28 + ICEBERG = 29 + + name: str = proto.Field( + proto.STRING, + number=1, + ) + connection_type: ConnectionType = proto.Field( + proto.ENUM, + number=2, + enum=ConnectionType, + ) + technology_types: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=3, + ) + + +class GetGoldengateConnectionTypeRequest(proto.Message): + r"""Message for getting a GoldengateConnectionType. + + Attributes: + name (str): + Required. Name of the resource in the format: + projects/{project}/locations/{location}/goldengateConnectionTypes/{goldengate_connection_type} + """ + + name: str = proto.Field( + proto.STRING, + number=1, + ) + + +class ListGoldengateConnectionTypesRequest(proto.Message): + r"""Message for listing GoldengateConnectionTypes. + + Attributes: + parent (str): + Required. Parent value for + ListGoldengateConnectionTypesRequest Format: + projects/{project}/locations/{location} + page_size (int): + Optional. Requested page size. Server may + return fewer items than requested. If + unspecified, server will pick an appropriate + default. + page_token (str): + Optional. A token identifying a page of + results the server should return. + filter (str): + Optional. An expression for filtering the results of the + request. The connection_type field must be specified in the + format: ``connection_type="ORACLE"``. + """ + + parent: str = proto.Field( + proto.STRING, + number=1, + ) + page_size: int = proto.Field( + proto.INT32, + number=2, + ) + page_token: str = proto.Field( + proto.STRING, + number=3, + ) + filter: str = proto.Field( + proto.STRING, + number=4, + ) + + +class ListGoldengateConnectionTypesResponse(proto.Message): + r"""Message for response to listing GoldengateConnectionTypes + + Attributes: + goldengate_connection_types (MutableSequence[google.cloud.oracledatabase_v1.types.GoldengateConnectionType]): + The list of GoldengateConnectionType + next_page_token (str): + A token, which can be sent as ``page_token`` to retrieve the + next page. If this field is omitted, there are no subsequent + pages. + unreachable (MutableSequence[str]): + Unordered list. Locations that could not be + reached. + """ + + @property + def raw_page(self): + return self + + goldengate_connection_types: MutableSequence["GoldengateConnectionType"] = ( + proto.RepeatedField( + proto.MESSAGE, + number=1, + message="GoldengateConnectionType", + ) + ) + next_page_token: str = proto.Field( + proto.STRING, + number=2, + ) + unreachable: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=3, + ) + + +__all__ = tuple(sorted(__protobuf__.manifest)) diff --git a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_deployment.py b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_deployment.py new file mode 100644 index 000000000000..fa63055ca2e2 --- /dev/null +++ b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_deployment.py @@ -0,0 +1,1270 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +from __future__ import annotations + +from typing import MutableMapping, MutableSequence + +import google.protobuf.timestamp_pb2 as timestamp_pb2 # type: ignore +import google.type.dayofweek_pb2 as dayofweek_pb2 # type: ignore +import proto # type: ignore + +__protobuf__ = proto.module( + package="google.cloud.oracledatabase.v1", + manifest={ + "GoldengateDeployment", + "GoldengateDeploymentProperties", + "GoldengateOggDeployment", + "GoldengateMaintenanceWindow", + "GoldengateMaintenanceConfig", + "DeploymentDiagnosticData", + "GoldengateBackupSchedule", + "IngressIp", + "GoldengateDeploymentLock", + "GoldengatePlacement", + "GoldengateGroupToRolesMapping", + "CreateGoldengateDeploymentRequest", + "DeleteGoldengateDeploymentRequest", + "GetGoldengateDeploymentRequest", + "ListGoldengateDeploymentsRequest", + "ListGoldengateDeploymentsResponse", + "StopGoldengateDeploymentRequest", + "StartGoldengateDeploymentRequest", + }, +) + + +class GoldengateDeployment(proto.Message): + r"""GoldengateDeployment Goldengate Deployment resource model. + + Attributes: + name (str): + Identifier. The name of the GoldengateDeployment resource in + the following format: + projects/{project}/locations/{region}/goldengateDeployments/{goldengate_deployment} + properties (google.cloud.oracledatabase_v1.types.GoldengateDeploymentProperties): + Required. The properties of the + GoldengateDeployment. + gcp_oracle_zone (str): + Optional. The GCP Oracle zone where Oracle + GoldengateDeployment is hosted. Example: + us-east4-b-r2. If not specified, the system will + pick a zone based on availability. + labels (MutableMapping[str, str]): + Optional. The labels or tags associated with + the GoldengateDeployment. + odb_network (str): + Optional. The name of the OdbNetwork + associated with the GoldengateDeployment. + odb_subnet (str): + Required. The name of the OdbSubnet + associated with the GoldengateDeployment for IP + allocation. + entitlement_id (str): + Output only. The ID of the subscription + entitlement associated with the + GoldengateDeployment + display_name (str): + Required. The display name for the + GoldengateDeployment. + create_time (google.protobuf.timestamp_pb2.Timestamp): + Output only. The date and time that the + GoldengateDeployment was created. + oci_url (str): + Output only. HTTPS link to OCI resources + exposed to Customer via UI Interface. + """ + + name: str = proto.Field( + proto.STRING, + number=1, + ) + properties: "GoldengateDeploymentProperties" = proto.Field( + proto.MESSAGE, + number=2, + message="GoldengateDeploymentProperties", + ) + gcp_oracle_zone: str = proto.Field( + proto.STRING, + number=3, + ) + labels: MutableMapping[str, str] = proto.MapField( + proto.STRING, + proto.STRING, + number=4, + ) + odb_network: str = proto.Field( + proto.STRING, + number=5, + ) + odb_subnet: str = proto.Field( + proto.STRING, + number=6, + ) + entitlement_id: str = proto.Field( + proto.STRING, + number=7, + ) + display_name: str = proto.Field( + proto.STRING, + number=8, + ) + create_time: timestamp_pb2.Timestamp = proto.Field( + proto.MESSAGE, + number=9, + message=timestamp_pb2.Timestamp, + ) + oci_url: str = proto.Field( + proto.STRING, + number=10, + ) + + +class GoldengateDeploymentProperties(proto.Message): + r"""Properties of GoldengateDeployment. + + Attributes: + ocid (str): + Output only. OCID of the + GoldengateDeployment. + lifecycle_state (google.cloud.oracledatabase_v1.types.GoldengateDeploymentProperties.GoldengateDeploymentLifecycleState): + Output only. State of the + GoldengateDeployment. + license_model (google.cloud.oracledatabase_v1.types.GoldengateDeploymentProperties.LicenseModel): + Optional. The Oracle license model that + applies to a Deployment. + environment_type (str): + Optional. The environment type of the + GoldengateDeployment. + cpu_core_count (int): + Optional. The Minimum number of OCPUs to be + made available for this Deployment. + is_auto_scaling_enabled (bool): + Optional. Indicates if auto scaling is + enabled for the Deployment's CPU core count. + description (str): + Optional. The description of the + GoldengateDeployment. + deployment_type (str): + Required. A valid Goldengate Deployment type. For a list of + supported types, use the ``ListGoldengateDeploymentTypes`` + operation. + ogg_data (google.cloud.oracledatabase_v1.types.GoldengateOggDeployment): + Required. The ogg data of the + GoldengateDeployment. + maintenance_window (google.cloud.oracledatabase_v1.types.GoldengateMaintenanceWindow): + Optional. The maintenance window of the + GoldengateDeployment. + maintenance_config (google.cloud.oracledatabase_v1.types.GoldengateMaintenanceConfig): + Optional. The maintenance configuration of + the GoldengateDeployment. + fqdn (str): + Output only. The Fully Qualified Domain Name + of the GoldengateDeployment. + lifecycle_sub_state (google.cloud.oracledatabase_v1.types.GoldengateDeploymentProperties.GoldengateDeploymentLifecycleSubState): + Output only. The lifecycle sub-state of the + GoldengateDeployment. + category (google.cloud.oracledatabase_v1.types.GoldengateDeploymentProperties.GoldengateDeploymentCategory): + Output only. The category of the + GoldengateDeployment. + deployment_backup_id (str): + Output only. The deployment backup id of the + GoldengateDeployment. + update_time (google.protobuf.timestamp_pb2.Timestamp): + Output only. The time the + GoldengateDeployment was updated. + lifecycle_details (str): + Output only. The lifecycle details of the + GoldengateDeployment. + healthy (bool): + Output only. Whether the GoldengateDeployment + is healthy. + load_balancer_subnet_id (str): + Output only. The load balancer subnet id of + the GoldengateDeployment. + load_balancer_id (str): + Output only. The load balancer id of the + GoldengateDeployment. + nsg_ids (MutableSequence[str]): + Output only. The nsg ids of the + GoldengateDeployment. + is_public (bool): + Output only. Whether the GoldengateDeployment + is public. + public_ip_address (str): + Output only. The public ip address of the + GoldengateDeployment. + private_ip_address (str): + Output only. The private ip address of the + GoldengateDeployment. + deployment_url (str): + Output only. The deployment url of the + GoldengateDeployment. + is_latest_version (bool): + Output only. Whether the GoldengateDeployment + is of the latest version. + upgrade_required_time (google.protobuf.timestamp_pb2.Timestamp): + Output only. The time upgrade required of the + GoldengateDeployment. + storage_utilization_bytes (int): + Output only. The storage utilization in bytes + of the GoldengateDeployment. + is_storage_utilization_limit_exceeded (bool): + Output only. Whether storage utilization + limit is exceeded of the GoldengateDeployment. + deployment_diagnostic_data (google.cloud.oracledatabase_v1.types.DeploymentDiagnosticData): + Output only. The deployment diagnostic data + of the GoldengateDeployment. + backup_schedule (google.cloud.oracledatabase_v1.types.GoldengateBackupSchedule): + Output only. The backup schedule of the + GoldengateDeployment. + next_maintenance_time (google.protobuf.timestamp_pb2.Timestamp): + Output only. The time of next maintenance of + the GoldengateDeployment. + next_maintenance_action_type (google.cloud.oracledatabase_v1.types.GoldengateDeploymentProperties.NextMaintenanceActionType): + Output only. The next maintenance action type + of the GoldengateDeployment. + next_maintenance_description (str): + Output only. The next maintenance description + of the GoldengateDeployment. + ogg_version_support_end_time (google.protobuf.timestamp_pb2.Timestamp): + Output only. The time ogg version supported + until of the GoldengateDeployment. + ingress_ips (MutableSequence[google.cloud.oracledatabase_v1.types.IngressIp]): + Output only. The ingress ips of the + GoldengateDeployment. + deployment_role (google.cloud.oracledatabase_v1.types.GoldengateDeploymentProperties.GoldengateDeploymentRoleType): + Output only. The deployment role of the + GoldengateDeployment. + last_backup_schedule_time (google.protobuf.timestamp_pb2.Timestamp): + Output only. The time last backup scheduled + of the GoldengateDeployment. + next_backup_schedule_time (google.protobuf.timestamp_pb2.Timestamp): + Output only. The time next backup scheduled + of the GoldengateDeployment. + role_change_time (google.protobuf.timestamp_pb2.Timestamp): + Output only. The time when the role of the + GoldengateDeployment was changed. + locks (MutableSequence[google.cloud.oracledatabase_v1.types.GoldengateDeploymentLock]): + Output only. The locks of the + GoldengateDeployment. + placements (MutableSequence[google.cloud.oracledatabase_v1.types.GoldengatePlacement]): + Output only. The placements of the + GoldengateDeployment. + """ + + class GoldengateDeploymentLifecycleState(proto.Enum): + r"""The various lifecycle states of the GoldengateDeployment. + + Values: + GOLDENGATE_DEPLOYMENT_LIFECYCLE_STATE_UNSPECIFIED (0): + Default unspecified value. + CREATING (1): + The deployment is being created. + UPDATING (2): + The deployment is being updated. + ACTIVE (3): + The deployment is active. + INACTIVE (4): + The deployment is inactive. + DELETING (5): + The deployment is being deleted. + DELETED (6): + The deployment is deleted. + FAILED (7): + The deployment failed. + NEEDS_ATTENTION (8): + The deployment needs attention. + IN_PROGRESS (9): + The deployment is in progress. + CANCELLING (10): + The deployment is canceling. + CANCELLED (11): + The deployment is canceled. + SUCCEEDED (12): + The deployment succeeded. + WAITING (13): + The deployment is waiting. + """ + + GOLDENGATE_DEPLOYMENT_LIFECYCLE_STATE_UNSPECIFIED = 0 + CREATING = 1 + UPDATING = 2 + ACTIVE = 3 + INACTIVE = 4 + DELETING = 5 + DELETED = 6 + FAILED = 7 + NEEDS_ATTENTION = 8 + IN_PROGRESS = 9 + CANCELLING = 10 + CANCELLED = 11 + SUCCEEDED = 12 + WAITING = 13 + + class LicenseModel(proto.Enum): + r"""The license model of the GoldengateDeployment. + + Values: + LICENSE_MODEL_UNSPECIFIED (0): + The license model is unspecified. + LICENSE_INCLUDED (1): + The license model is included. + BRING_YOUR_OWN_LICENSE (2): + The license model is bring your own license. + """ + + LICENSE_MODEL_UNSPECIFIED = 0 + LICENSE_INCLUDED = 1 + BRING_YOUR_OWN_LICENSE = 2 + + class GoldengateDeploymentLifecycleSubState(proto.Enum): + r"""The various lifecycle sub-states of the GoldengateDeployment. + + Values: + GOLDENGATE_DEPLOYMENT_LIFECYCLE_SUB_STATE_UNSPECIFIED (0): + The lifecycle sub-state is unspecified. + RECOVERING (1): + The deployment is recovering. + STARTING (2): + The deployment is starting. + STOPPING (3): + The deployment is stopping. + MOVING (4): + The deployment is moving. + UPGRADING (5): + The deployment is upgrading. + RESTORING (6): + The deployment is restoring. + BACKING_UP (7): + The deployment is backing up. + ROLLING_BACK (8): + The deployment is rolling back. + """ + + GOLDENGATE_DEPLOYMENT_LIFECYCLE_SUB_STATE_UNSPECIFIED = 0 + RECOVERING = 1 + STARTING = 2 + STOPPING = 3 + MOVING = 4 + UPGRADING = 5 + RESTORING = 6 + BACKING_UP = 7 + ROLLING_BACK = 8 + + class GoldengateDeploymentCategory(proto.Enum): + r"""The category of the GoldengateDeployment. + + Values: + GOLDENGATE_DEPLOYMENT_CATEGORY_UNSPECIFIED (0): + The category is unspecified. + DATA_REPLICATION (1): + The deployment is data replication. + DATA_TRANSFORMS (2): + The deployment is data transforms. + """ + + GOLDENGATE_DEPLOYMENT_CATEGORY_UNSPECIFIED = 0 + DATA_REPLICATION = 1 + DATA_TRANSFORMS = 2 + + class NextMaintenanceActionType(proto.Enum): + r"""The various next maintenance action types of the + GoldengateDeployment. + + Values: + NEXT_MAINTENANCE_ACTION_TYPE_UNSPECIFIED (0): + The next maintenance action type is + unspecified. + UPGRADE (1): + The next maintenance action type is upgrade. + """ + + NEXT_MAINTENANCE_ACTION_TYPE_UNSPECIFIED = 0 + UPGRADE = 1 + + class GoldengateDeploymentRoleType(proto.Enum): + r"""The deployment role type of the GoldengateDeployment. + + Values: + GOLDENGATE_DEPLOYMENT_ROLE_TYPE_UNSPECIFIED (0): + The deployment role type is unspecified. + PRIMARY (1): + The deployment role type is primary. + STANDBY (2): + The deployment role type is standby. + """ + + GOLDENGATE_DEPLOYMENT_ROLE_TYPE_UNSPECIFIED = 0 + PRIMARY = 1 + STANDBY = 2 + + ocid: str = proto.Field( + proto.STRING, + number=1, + ) + lifecycle_state: GoldengateDeploymentLifecycleState = proto.Field( + proto.ENUM, + number=2, + enum=GoldengateDeploymentLifecycleState, + ) + license_model: LicenseModel = proto.Field( + proto.ENUM, + number=3, + enum=LicenseModel, + ) + environment_type: str = proto.Field( + proto.STRING, + number=4, + ) + cpu_core_count: int = proto.Field( + proto.INT32, + number=5, + ) + is_auto_scaling_enabled: bool = proto.Field( + proto.BOOL, + number=6, + ) + description: str = proto.Field( + proto.STRING, + number=7, + ) + deployment_type: str = proto.Field( + proto.STRING, + number=8, + ) + ogg_data: "GoldengateOggDeployment" = proto.Field( + proto.MESSAGE, + number=9, + message="GoldengateOggDeployment", + ) + maintenance_window: "GoldengateMaintenanceWindow" = proto.Field( + proto.MESSAGE, + number=10, + message="GoldengateMaintenanceWindow", + ) + maintenance_config: "GoldengateMaintenanceConfig" = proto.Field( + proto.MESSAGE, + number=11, + message="GoldengateMaintenanceConfig", + ) + fqdn: str = proto.Field( + proto.STRING, + number=12, + ) + lifecycle_sub_state: GoldengateDeploymentLifecycleSubState = proto.Field( + proto.ENUM, + number=13, + enum=GoldengateDeploymentLifecycleSubState, + ) + category: GoldengateDeploymentCategory = proto.Field( + proto.ENUM, + number=14, + enum=GoldengateDeploymentCategory, + ) + deployment_backup_id: str = proto.Field( + proto.STRING, + number=15, + ) + update_time: timestamp_pb2.Timestamp = proto.Field( + proto.MESSAGE, + number=16, + message=timestamp_pb2.Timestamp, + ) + lifecycle_details: str = proto.Field( + proto.STRING, + number=17, + ) + healthy: bool = proto.Field( + proto.BOOL, + number=18, + ) + load_balancer_subnet_id: str = proto.Field( + proto.STRING, + number=19, + ) + load_balancer_id: str = proto.Field( + proto.STRING, + number=20, + ) + nsg_ids: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=21, + ) + is_public: bool = proto.Field( + proto.BOOL, + number=22, + ) + public_ip_address: str = proto.Field( + proto.STRING, + number=23, + ) + private_ip_address: str = proto.Field( + proto.STRING, + number=24, + ) + deployment_url: str = proto.Field( + proto.STRING, + number=25, + ) + is_latest_version: bool = proto.Field( + proto.BOOL, + number=26, + ) + upgrade_required_time: timestamp_pb2.Timestamp = proto.Field( + proto.MESSAGE, + number=27, + message=timestamp_pb2.Timestamp, + ) + storage_utilization_bytes: int = proto.Field( + proto.INT64, + number=28, + ) + is_storage_utilization_limit_exceeded: bool = proto.Field( + proto.BOOL, + number=29, + ) + deployment_diagnostic_data: "DeploymentDiagnosticData" = proto.Field( + proto.MESSAGE, + number=30, + message="DeploymentDiagnosticData", + ) + backup_schedule: "GoldengateBackupSchedule" = proto.Field( + proto.MESSAGE, + number=31, + message="GoldengateBackupSchedule", + ) + next_maintenance_time: timestamp_pb2.Timestamp = proto.Field( + proto.MESSAGE, + number=32, + message=timestamp_pb2.Timestamp, + ) + next_maintenance_action_type: NextMaintenanceActionType = proto.Field( + proto.ENUM, + number=33, + enum=NextMaintenanceActionType, + ) + next_maintenance_description: str = proto.Field( + proto.STRING, + number=34, + ) + ogg_version_support_end_time: timestamp_pb2.Timestamp = proto.Field( + proto.MESSAGE, + number=35, + message=timestamp_pb2.Timestamp, + ) + ingress_ips: MutableSequence["IngressIp"] = proto.RepeatedField( + proto.MESSAGE, + number=36, + message="IngressIp", + ) + deployment_role: GoldengateDeploymentRoleType = proto.Field( + proto.ENUM, + number=37, + enum=GoldengateDeploymentRoleType, + ) + last_backup_schedule_time: timestamp_pb2.Timestamp = proto.Field( + proto.MESSAGE, + number=38, + message=timestamp_pb2.Timestamp, + ) + next_backup_schedule_time: timestamp_pb2.Timestamp = proto.Field( + proto.MESSAGE, + number=39, + message=timestamp_pb2.Timestamp, + ) + role_change_time: timestamp_pb2.Timestamp = proto.Field( + proto.MESSAGE, + number=40, + message=timestamp_pb2.Timestamp, + ) + locks: MutableSequence["GoldengateDeploymentLock"] = proto.RepeatedField( + proto.MESSAGE, + number=41, + message="GoldengateDeploymentLock", + ) + placements: MutableSequence["GoldengatePlacement"] = proto.RepeatedField( + proto.MESSAGE, + number=42, + message="GoldengatePlacement", + ) + + +class GoldengateOggDeployment(proto.Message): + r"""The Ogg data of the GoldengateDeployment. + + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + + Attributes: + admin_password (str): + Optional. The Goldengate deployment console + password in plain text. + + This field is a member of `oneof`_ ``deployment_password_options``. + admin_password_secret_version (str): + Optional. Input only. The Goldengate + deployment console password secret version. + + This field is a member of `oneof`_ ``deployment_password_options``. + deployment (str): + Required. The name given to the Goldengate + service deployment. The name must be 1 to 32 + characters long, must contain only alphanumeric + characters and must start with a letter. + admin_username (str): + Required. The Goldengate deployment console + username. + ogg_version (str): + Optional. Version of OGG + certificate (str): + Output only. The certificate of the + GoldengateDeployment. + credential_store (google.cloud.oracledatabase_v1.types.GoldengateOggDeployment.CredentialStore): + Output only. The credential store of the + GoldengateDeployment. + identity_domain_id (str): + Output only. The identity domain id of the + GoldengateDeployment. + password_secret_id (str): + Output only. The password secret id of the + GoldengateDeployment. + group_roles_mapping (google.cloud.oracledatabase_v1.types.GoldengateGroupToRolesMapping): + Output only. The group to roles mapping of + the GoldengateDeployment. + """ + + class CredentialStore(proto.Enum): + r"""The credential store of the GoldengateDeployment. + + Values: + CREDENTIAL_STORE_UNSPECIFIED (0): + The credential store is unspecified. + GOLDENGATE (1): + The credential store is Goldengate. + IAM (2): + The credential store is IAM. + """ + + CREDENTIAL_STORE_UNSPECIFIED = 0 + GOLDENGATE = 1 + IAM = 2 + + admin_password: str = proto.Field( + proto.STRING, + number=3, + oneof="deployment_password_options", + ) + admin_password_secret_version: str = proto.Field( + proto.STRING, + number=10, + oneof="deployment_password_options", + ) + deployment: str = proto.Field( + proto.STRING, + number=1, + ) + admin_username: str = proto.Field( + proto.STRING, + number=2, + ) + ogg_version: str = proto.Field( + proto.STRING, + number=4, + ) + certificate: str = proto.Field( + proto.STRING, + number=5, + ) + credential_store: CredentialStore = proto.Field( + proto.ENUM, + number=6, + enum=CredentialStore, + ) + identity_domain_id: str = proto.Field( + proto.STRING, + number=7, + ) + password_secret_id: str = proto.Field( + proto.STRING, + number=8, + ) + group_roles_mapping: "GoldengateGroupToRolesMapping" = proto.Field( + proto.MESSAGE, + number=9, + message="GoldengateGroupToRolesMapping", + ) + + +class GoldengateMaintenanceWindow(proto.Message): + r"""The maintenance window of the GoldengateDeployment. + + Attributes: + day (google.type.dayofweek_pb2.DayOfWeek): + Required. Days of the week. + start_hour (int): + Required. Start hour for maintenance period. + Hour is in UTC. + """ + + day: dayofweek_pb2.DayOfWeek = proto.Field( + proto.ENUM, + number=1, + enum=dayofweek_pb2.DayOfWeek, + ) + start_hour: int = proto.Field( + proto.INT32, + number=2, + ) + + +class GoldengateMaintenanceConfig(proto.Message): + r"""The maintenance configuration of the GoldengateDeployment. + + Attributes: + is_interim_release_auto_upgrade_enabled (bool): + Optional. By default auto upgrade for interim releases are + not enabled. If auto-upgrade is enabled for interim release, + you have to specify interim_release_upgrade_period_days too. + interim_release_upgrade_period_days (int): + Optional. Defines auto upgrade period for + interim releases. This period must be shorter or + equal to bundle release upgrade period. + bundle_release_upgrade_period_days (int): + Optional. Defines auto upgrade period for + bundle releases. Manually configured period + cannot be longer than service defined period for + bundle releases. This period must be shorter or + equal to major release upgrade period. Not + passing this field during create will equate to + using the service default. + major_release_upgrade_period_days (int): + Optional. Defines auto upgrade period for + major releases. Manually configured period + cannot be longer than service defined period for + major releases. Not passing this field during + create will equate to using the service default. + security_patch_upgrade_period_days (int): + Optional. Defines auto upgrade period for + releases with security fix. Manually configured + period cannot be longer than service defined + period for security releases. Not passing this + field during create will equate to using the + service default. + """ + + is_interim_release_auto_upgrade_enabled: bool = proto.Field( + proto.BOOL, + number=1, + ) + interim_release_upgrade_period_days: int = proto.Field( + proto.INT32, + number=2, + ) + bundle_release_upgrade_period_days: int = proto.Field( + proto.INT32, + number=3, + ) + major_release_upgrade_period_days: int = proto.Field( + proto.INT32, + number=4, + ) + security_patch_upgrade_period_days: int = proto.Field( + proto.INT32, + number=5, + ) + + +class DeploymentDiagnosticData(proto.Message): + r"""The deployment diagnostic data. + + Attributes: + namespace (str): + Output only. The namespace name. + bucket (str): + Output only. The bucket name. + object_ (str): + Output only. The object name. + diagnostic_state (google.cloud.oracledatabase_v1.types.DeploymentDiagnosticData.DiagnosticState): + Output only. The diagnostic state. + diagnostic_start_time (google.protobuf.timestamp_pb2.Timestamp): + Output only. The time diagnostic start. + diagnostic_end_time (google.protobuf.timestamp_pb2.Timestamp): + Output only. The time diagnostic end. + """ + + class DiagnosticState(proto.Enum): + r"""The possible states of the diagnostic data. + + Values: + DIAGNOSTIC_STATE_UNSPECIFIED (0): + The diagnostic state is unspecified. + IN_PROGRESS (1): + The diagnostic is in progress. + SUCCEEDED (2): + The diagnostic completed successfully. + FAILED (3): + The diagnostic failed. + """ + + DIAGNOSTIC_STATE_UNSPECIFIED = 0 + IN_PROGRESS = 1 + SUCCEEDED = 2 + FAILED = 3 + + namespace: str = proto.Field( + proto.STRING, + number=1, + ) + bucket: str = proto.Field( + proto.STRING, + number=2, + ) + object_: str = proto.Field( + proto.STRING, + number=3, + ) + diagnostic_state: DiagnosticState = proto.Field( + proto.ENUM, + number=4, + enum=DiagnosticState, + ) + diagnostic_start_time: timestamp_pb2.Timestamp = proto.Field( + proto.MESSAGE, + number=5, + message=timestamp_pb2.Timestamp, + ) + diagnostic_end_time: timestamp_pb2.Timestamp = proto.Field( + proto.MESSAGE, + number=6, + message=timestamp_pb2.Timestamp, + ) + + +class GoldengateBackupSchedule(proto.Message): + r"""The backup schedule of the GoldengateDeployment. + + Attributes: + bucket (str): + Output only. The bucket name. + compartment_id (str): + Output only. The compartment id. + frequency_backup_scheduled (google.cloud.oracledatabase_v1.types.GoldengateBackupSchedule.FrequencyBackupScheduled): + Output only. The frequency backup scheduled. + metadata_only (bool): + Output only. If metadata only. + namespace (str): + Output only. The namespace name. + backup_scheduled_time (google.protobuf.timestamp_pb2.Timestamp): + Output only. The timestamp of when the backup + was scheduled. + """ + + class FrequencyBackupScheduled(proto.Enum): + r"""Enum for frequency backup scheduled. + + Values: + FREQUENCY_BACKUP_SCHEDULED_UNSPECIFIED (0): + The frequency backup scheduled is + unspecified. + DAILY (1): + The frequency backup scheduled is daily. + WEEKLY (2): + The frequency backup scheduled is weekly. + MONTHLY (3): + The frequency backup scheduled is monthly. + """ + + FREQUENCY_BACKUP_SCHEDULED_UNSPECIFIED = 0 + DAILY = 1 + WEEKLY = 2 + MONTHLY = 3 + + bucket: str = proto.Field( + proto.STRING, + number=1, + ) + compartment_id: str = proto.Field( + proto.STRING, + number=2, + ) + frequency_backup_scheduled: FrequencyBackupScheduled = proto.Field( + proto.ENUM, + number=3, + enum=FrequencyBackupScheduled, + ) + metadata_only: bool = proto.Field( + proto.BOOL, + number=4, + ) + namespace: str = proto.Field( + proto.STRING, + number=5, + ) + backup_scheduled_time: timestamp_pb2.Timestamp = proto.Field( + proto.MESSAGE, + number=6, + message=timestamp_pb2.Timestamp, + ) + + +class IngressIp(proto.Message): + r"""The ingress IPs of the GoldengateDeployment. + + Attributes: + ingress_ip_address (str): + Output only. The ingress IP. + """ + + ingress_ip_address: str = proto.Field( + proto.STRING, + number=1, + ) + + +class GoldengateDeploymentLock(proto.Message): + r"""The lock of the GoldengateDeployment. + + Attributes: + type_ (google.cloud.oracledatabase_v1.types.GoldengateDeploymentLock.LockType): + Output only. The type of lock. + compartment_id (str): + Output only. The compartment id. + related_resource_id (str): + Output only. The related resource id. + message (str): + Output only. The message. + create_time (google.protobuf.timestamp_pb2.Timestamp): + Output only. The time created. + """ + + class LockType(proto.Enum): + r"""The type of lock. + + Values: + LOCK_TYPE_UNSPECIFIED (0): + The lock type is unspecified. + FULL (1): + The lock type is full. + DELETE (2): + The lock type is delete. + """ + + LOCK_TYPE_UNSPECIFIED = 0 + FULL = 1 + DELETE = 2 + + type_: LockType = proto.Field( + proto.ENUM, + number=1, + enum=LockType, + ) + compartment_id: str = proto.Field( + proto.STRING, + number=2, + ) + related_resource_id: str = proto.Field( + proto.STRING, + number=3, + ) + message: str = proto.Field( + proto.STRING, + number=4, + ) + create_time: timestamp_pb2.Timestamp = proto.Field( + proto.MESSAGE, + number=5, + message=timestamp_pb2.Timestamp, + ) + + +class GoldengatePlacement(proto.Message): + r"""The placement of the GoldengateDeployment. + + Attributes: + availability_domain (str): + Output only. The availability domain. + fault_domain (str): + Output only. The fault domain. + """ + + availability_domain: str = proto.Field( + proto.STRING, + number=1, + ) + fault_domain: str = proto.Field( + proto.STRING, + number=2, + ) + + +class GoldengateGroupToRolesMapping(proto.Message): + r"""The group to roles mapping of the GoldengateDeployment. + + Attributes: + security_group_id (str): + Output only. The security group id. + administrator_group_id (str): + Output only. The administrator group id. + operator_group_id (str): + Output only. The operator group id. + user_group_id (str): + Output only. The user group id. + """ + + security_group_id: str = proto.Field( + proto.STRING, + number=1, + ) + administrator_group_id: str = proto.Field( + proto.STRING, + number=2, + ) + operator_group_id: str = proto.Field( + proto.STRING, + number=3, + ) + user_group_id: str = proto.Field( + proto.STRING, + number=4, + ) + + +class CreateGoldengateDeploymentRequest(proto.Message): + r"""The request for ``GoldengateDeployment.Create``. + + Attributes: + parent (str): + Required. The value for parent of the + GoldengateDeployment in the following format: + projects/{project}/locations/{location}. + goldengate_deployment_id (str): + Required. The ID of the GoldengateDeployment to create. This + value is restricted to + (^\ `a-z <[a-z0-9-]{0,61}[a-z0-9]>`__?$) and must be a + maximum of 63 characters in length. The value must start + with a letter and end with a letter or a number. + goldengate_deployment (google.cloud.oracledatabase_v1.types.GoldengateDeployment): + Required. The resource being created. + request_id (str): + Optional. An optional request ID to identify + requests. Specify a unique request ID so that if + you must retry your request, the server will + know to ignore the request if it has already + been completed. The server will guarantee that + for at least 60 minutes since the first request. + + For example, consider a situation where you make + an initial request and the request times out. If + you make the request again with the same request + ID, the server can check if original operation + with the same request ID was received, and if + so, will ignore the second request. This + prevents clients from accidentally creating + duplicate commitments. + + The request ID must be a valid UUID with the + exception that zero UUID is not supported + (00000000-0000-0000-0000-000000000000). + """ + + parent: str = proto.Field( + proto.STRING, + number=1, + ) + goldengate_deployment_id: str = proto.Field( + proto.STRING, + number=2, + ) + goldengate_deployment: "GoldengateDeployment" = proto.Field( + proto.MESSAGE, + number=3, + message="GoldengateDeployment", + ) + request_id: str = proto.Field( + proto.STRING, + number=4, + ) + + +class DeleteGoldengateDeploymentRequest(proto.Message): + r"""The request for ``GoldengateDeployment.Delete``. + + Attributes: + name (str): + Required. The name of the GoldengateDeployment in the + following format: + projects/{project}/locations/{location}/goldengateDeployments/{goldengate_deployment}. + request_id (str): + Optional. An optional ID to identify the + request. This value is used to identify + duplicate requests. If you make a request with + the same request ID and the original request is + still in progress or completed, the server + ignores the second request. This prevents + clients from accidentally creating duplicate + commitments. + + The request ID must be a valid UUID with the + exception that zero UUID is not supported + (00000000-0000-0000-0000-000000000000). + """ + + name: str = proto.Field( + proto.STRING, + number=1, + ) + request_id: str = proto.Field( + proto.STRING, + number=2, + ) + + +class GetGoldengateDeploymentRequest(proto.Message): + r"""The request for ``GoldengateDeployment.Get``. + + Attributes: + name (str): + Required. The name of the GoldengateDeployment in the + following format: + projects/{project}/locations/{location}/goldengateDeployments/{goldengate_deployment}. + """ + + name: str = proto.Field( + proto.STRING, + number=1, + ) + + +class ListGoldengateDeploymentsRequest(proto.Message): + r"""The request for ``GoldengateDeployment.List``. + + Attributes: + parent (str): + Required. The parent value for + GoldengateDeployments in the following format: + projects/{project}/locations/{location}. + page_size (int): + Optional. The maximum number of items to + return. If unspecified, at most 50 + GoldengateDeployments will be returned. The + maximum value is 1000; values above 1000 will be + coerced to 1000. + page_token (str): + Optional. A page token, received from a + previous ListGoldengateDeployments call. Provide + this to retrieve the subsequent page. + filter (str): + Optional. An expression for filtering the + results of the request. + order_by (str): + Optional. An expression for ordering the + results of the request. + """ + + parent: str = proto.Field( + proto.STRING, + number=1, + ) + page_size: int = proto.Field( + proto.INT32, + number=2, + ) + page_token: str = proto.Field( + proto.STRING, + number=3, + ) + filter: str = proto.Field( + proto.STRING, + number=4, + ) + order_by: str = proto.Field( + proto.STRING, + number=5, + ) + + +class ListGoldengateDeploymentsResponse(proto.Message): + r"""The response for ``GoldengateDeployment.List``. + + Attributes: + goldengate_deployments (MutableSequence[google.cloud.oracledatabase_v1.types.GoldengateDeployment]): + The list of GoldengateDeployments. + next_page_token (str): + A token identifying a page of results the + server should return. + unreachable (MutableSequence[str]): + Optional. Locations that could not be + reached. + """ + + @property + def raw_page(self): + return self + + goldengate_deployments: MutableSequence["GoldengateDeployment"] = ( + proto.RepeatedField( + proto.MESSAGE, + number=1, + message="GoldengateDeployment", + ) + ) + next_page_token: str = proto.Field( + proto.STRING, + number=2, + ) + unreachable: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=3, + ) + + +class StopGoldengateDeploymentRequest(proto.Message): + r"""The request for ``GoldengateDeployment.Stop``. + + Attributes: + name (str): + Required. The name of the Goldengate Deployment in the + following format: + projects/{project}/locations/{location}/goldengateDeployments/{goldengate_deployment}. + """ + + name: str = proto.Field( + proto.STRING, + number=1, + ) + + +class StartGoldengateDeploymentRequest(proto.Message): + r"""The request for ``GoldengateDeployment.Start``. + + Attributes: + name (str): + Required. The name of the Goldengate Deployment in the + following format: + projects/{project}/locations/{location}/goldengateDeployments/{goldengate_deployment}. + """ + + name: str = proto.Field( + proto.STRING, + number=1, + ) + + +__all__ = tuple(sorted(__protobuf__.manifest)) diff --git a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_deployment_environment.py b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_deployment_environment.py new file mode 100644 index 000000000000..5060749fc32b --- /dev/null +++ b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_deployment_environment.py @@ -0,0 +1,249 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +from __future__ import annotations + +from typing import MutableMapping, MutableSequence + +import proto # type: ignore + +__protobuf__ = proto.module( + package="google.cloud.oracledatabase.v1", + manifest={ + "GoldengateDeploymentEnvironment", + "GetGoldengateDeploymentEnvironmentRequest", + "ListGoldengateDeploymentEnvironmentsRequest", + "ListGoldengateDeploymentEnvironmentsResponse", + }, +) + + +class GoldengateDeploymentEnvironment(proto.Message): + r"""Details of the Goldengate Deployment Environment resource. + + Attributes: + name (str): + Identifier. The name of the Goldengate Deployment + Environment resource with the format: + projects/{project}/locations/{location}/goldengateDeploymentEnvironments/{goldengate_deployment_environment} + category (google.cloud.oracledatabase_v1.types.GoldengateDeploymentEnvironment.DeploymentCategory): + Output only. The category of the Goldengate + Deployment Environment resource. + display_name (str): + The display name of the Goldengate Deployment + Environment resource. + default_cpu_core_count (int): + Output only. The default CPU core count of + the Goldengate Deployment Environment resource. + environment_type (google.cloud.oracledatabase_v1.types.GoldengateDeploymentEnvironment.DeploymentEnvironmentType): + Output only. The environment type of the + Goldengate Deployment Environment resource. + auto_scaling_enabled (bool): + Output only. Whether auto scaling is enabled + by default for the Goldengate Deployment + Environment resource. + max_cpu_core_count (int): + Output only. The max CPU core count of the + Goldengate Deployment Environment resource. + memory_gb_per_cpu_core (int): + Output only. The memory per CPU core in GBs + of the Goldengate Deployment Environment + resource. + min_cpu_core_count (int): + Output only. The min CPU core count of the + Goldengate Deployment Environment resource. + network_bandwidth_gbps_per_cpu_core (int): + Output only. The network bandwidth per CPU + core in Gbps of the Goldengate Deployment + Environment resource. + storage_usage_limit_gb_per_cpu_core (int): + Output only. The storage usage limit per CPU + core in GBs of the Goldengate Deployment + Environment resource. + """ + + class DeploymentCategory(proto.Enum): + r"""Deployment category of the Goldengate Deployment resource. + + Values: + DEPLOYMENT_CATEGORY_UNSPECIFIED (0): + Default unspecified value. + DATA_REPLICATION_CATEGORY (1): + Goldengate Deployment Environment category is + DATA_REPLICATION_CATEGORY. + DATA_TRANSFORMS_CATEGORY (2): + Goldengate Deployment Environment category is + DATA_TRANSFORMS_CATEGORY. + """ + + DEPLOYMENT_CATEGORY_UNSPECIFIED = 0 + DATA_REPLICATION_CATEGORY = 1 + DATA_TRANSFORMS_CATEGORY = 2 + + class DeploymentEnvironmentType(proto.Enum): + r"""The environment type of the Goldengate Deployment Environment + resource. + + Values: + DEPLOYMENT_ENVIRONMENT_TYPE_UNSPECIFIED (0): + Default unspecified value. + PRODUCTION (1): + Goldengate Deployment Environment type is + PRODUCTION. + DEVELOPMENT_OR_TESTING (2): + Goldengate Deployment Environment type is + DEVELOPMENT_OR_TESTING. + """ + + DEPLOYMENT_ENVIRONMENT_TYPE_UNSPECIFIED = 0 + PRODUCTION = 1 + DEVELOPMENT_OR_TESTING = 2 + + name: str = proto.Field( + proto.STRING, + number=1, + ) + category: DeploymentCategory = proto.Field( + proto.ENUM, + number=2, + enum=DeploymentCategory, + ) + display_name: str = proto.Field( + proto.STRING, + number=3, + ) + default_cpu_core_count: int = proto.Field( + proto.INT32, + number=4, + ) + environment_type: DeploymentEnvironmentType = proto.Field( + proto.ENUM, + number=5, + enum=DeploymentEnvironmentType, + ) + auto_scaling_enabled: bool = proto.Field( + proto.BOOL, + number=6, + ) + max_cpu_core_count: int = proto.Field( + proto.INT32, + number=7, + ) + memory_gb_per_cpu_core: int = proto.Field( + proto.INT32, + number=8, + ) + min_cpu_core_count: int = proto.Field( + proto.INT32, + number=9, + ) + network_bandwidth_gbps_per_cpu_core: int = proto.Field( + proto.INT32, + number=10, + ) + storage_usage_limit_gb_per_cpu_core: int = proto.Field( + proto.INT32, + number=11, + ) + + +class GetGoldengateDeploymentEnvironmentRequest(proto.Message): + r"""Message for getting a GoldengateDeploymentEnvironment. + + Attributes: + name (str): + Required. Name of the resource with the format: + projects/{project}/locations/{location}/goldengateDeploymentEnvironments/{goldengate_deployment_environment} + """ + + name: str = proto.Field( + proto.STRING, + number=1, + ) + + +class ListGoldengateDeploymentEnvironmentsRequest(proto.Message): + r"""Message for listing GoldengateDeploymentEnvironments. + + Attributes: + parent (str): + Required. The parent, which owns this + collection of GoldengateDeploymentEnvironments. + Format: + + projects/{project}/locations/{location} + page_size (int): + Optional. The maximum number of items to + return. If unspecified, at most 50 deployment + environments will be returned. The maximum value + is 1000; values above 1000 will be coerced to + 1000. + page_token (str): + Optional. A token identifying a page of + results the server should return. + """ + + parent: str = proto.Field( + proto.STRING, + number=1, + ) + page_size: int = proto.Field( + proto.INT32, + number=2, + ) + page_token: str = proto.Field( + proto.STRING, + number=3, + ) + + +class ListGoldengateDeploymentEnvironmentsResponse(proto.Message): + r"""Message for response to listing + GoldengateDeploymentEnvironments + + Attributes: + goldengate_deployment_environments (MutableSequence[google.cloud.oracledatabase_v1.types.GoldengateDeploymentEnvironment]): + The list of GoldengateDeploymentEnvironment + next_page_token (str): + A token identifying a page of results the + server should return. If this field is empty, + there are no subsequent pages. + unreachable (MutableSequence[str]): + Unordered list. Locations that could not be + reached. + """ + + @property + def raw_page(self): + return self + + goldengate_deployment_environments: MutableSequence[ + "GoldengateDeploymentEnvironment" + ] = proto.RepeatedField( + proto.MESSAGE, + number=1, + message="GoldengateDeploymentEnvironment", + ) + next_page_token: str = proto.Field( + proto.STRING, + number=2, + ) + unreachable: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=3, + ) + + +__all__ = tuple(sorted(__protobuf__.manifest)) diff --git a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_deployment_type.py b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_deployment_type.py new file mode 100644 index 000000000000..8b5baabe4539 --- /dev/null +++ b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_deployment_type.py @@ -0,0 +1,285 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +from __future__ import annotations + +from typing import MutableMapping, MutableSequence + +import proto # type: ignore + +__protobuf__ = proto.module( + package="google.cloud.oracledatabase.v1", + manifest={ + "GoldengateDeploymentType", + "GetGoldengateDeploymentTypeRequest", + "ListGoldengateDeploymentTypesRequest", + "ListGoldengateDeploymentTypesResponse", + }, +) + + +class GoldengateDeploymentType(proto.Message): + r"""Details of the Goldengate Deployment Type resource. + + Attributes: + name (str): + Identifier. The name of the Goldengate Deployment Type + resource with the format: + projects/{project}/locations/{region}/goldengateDeploymentTypes/{goldengate_deployment_type} + deployment_type (google.cloud.oracledatabase_v1.types.GoldengateDeploymentType.DeploymentType): + Output only. The deployment type of the + Goldengate Deployment Type resource. + category (google.cloud.oracledatabase_v1.types.GoldengateDeploymentType.DeploymentCategory): + Output only. The category of the Goldengate + Deployment Type resource. + connection_types (MutableSequence[str]): + Output only. The connection types of the + Goldengate Deployment Type resource. + display_name (str): + Output only. The display name of the + Goldengate Deployment Type resource. + ogg_version (str): + Output only. The Ogg version of the + Goldengate Deployment Type resource. + source_technologies (MutableSequence[str]): + Output only. The source technologies of the + Goldengate Deployment Type resource. + supported_capabilities (MutableSequence[str]): + Output only. The supported capabilities of + the Goldengate Deployment Type resource. + supported_technologies_url (str): + Output only. The supported technologies URL + of the Goldengate Deployment Type resource. + target_technologies (MutableSequence[str]): + Output only. The target technologies of the + Goldengate Deployment Type resource. + default_username (str): + Output only. The default username of the + Goldengate Deployment Type resource. + """ + + class DeploymentType(proto.Enum): + r"""The deployment type of the Goldengate Deployment Type + resource. + + Values: + DEPLOYMENT_TYPE_UNSPECIFIED (0): + Default unspecified value. + OGG (1): + Goldengate Deployment Type category is OGG. + DATABASE_ORACLE (2): + Goldengate Deployment Type category is DATABASE_ORACLE. + BIGDATA (3): + Goldengate Deployment Type category is + BIGDATA. + DATABASE_MICROSOFT_SQLSERVER (4): + Goldengate Deployment Type category is + DATABASE_MICROSOFT_SQLSERVER. + DATABASE_MYSQL (5): + Goldengate Deployment Type category is DATABASE_MYSQL. + DATABASE_POSTGRESQL (6): + Goldengate Deployment Type category is DATABASE_POSTGRESQL. + DATABASE_DB2ZOS (7): + Goldengate Deployment Type category is DATABASE_DB2ZOS. + DATABASE_DB2I (8): + Goldengate Deployment Type category is DATABASE_DB2I. + GGSA (9): + Goldengate Deployment Type category is GGSA. + DATA_TRANSFORMS (10): + Goldengate Deployment Type category is DATA_TRANSFORMS. + """ + + DEPLOYMENT_TYPE_UNSPECIFIED = 0 + OGG = 1 + DATABASE_ORACLE = 2 + BIGDATA = 3 + DATABASE_MICROSOFT_SQLSERVER = 4 + DATABASE_MYSQL = 5 + DATABASE_POSTGRESQL = 6 + DATABASE_DB2ZOS = 7 + DATABASE_DB2I = 8 + GGSA = 9 + DATA_TRANSFORMS = 10 + + class DeploymentCategory(proto.Enum): + r"""The category of the Goldengate Deployment Type resource. + + Values: + DEPLOYMENT_CATEGORY_UNSPECIFIED (0): + Default unspecified value. + DATA_REPLICATION_CATEGORY (1): + Goldengate Deployment Type category is + DATA_REPLICATION_CATEGORY. + DATA_TRANSFORMS_CATEGORY (2): + Goldengate Deployment Type category is + DATA_TRANSFORMS_CATEGORY. + """ + + DEPLOYMENT_CATEGORY_UNSPECIFIED = 0 + DATA_REPLICATION_CATEGORY = 1 + DATA_TRANSFORMS_CATEGORY = 2 + + name: str = proto.Field( + proto.STRING, + number=1, + ) + deployment_type: DeploymentType = proto.Field( + proto.ENUM, + number=2, + enum=DeploymentType, + ) + category: DeploymentCategory = proto.Field( + proto.ENUM, + number=3, + enum=DeploymentCategory, + ) + connection_types: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=4, + ) + display_name: str = proto.Field( + proto.STRING, + number=5, + ) + ogg_version: str = proto.Field( + proto.STRING, + number=6, + ) + source_technologies: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=7, + ) + supported_capabilities: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=8, + ) + supported_technologies_url: str = proto.Field( + proto.STRING, + number=9, + ) + target_technologies: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=10, + ) + default_username: str = proto.Field( + proto.STRING, + number=11, + ) + + +class GetGoldengateDeploymentTypeRequest(proto.Message): + r"""Message for getting a GoldengateDeploymentType. + + Attributes: + name (str): + Required. The name of the GoldengateDeploymentType to + retrieve. Format: + projects/{project}/locations/{location}/goldengateDeploymentTypes/{goldengate_deployment_type} + """ + + name: str = proto.Field( + proto.STRING, + number=1, + ) + + +class ListGoldengateDeploymentTypesRequest(proto.Message): + r"""Message for listing GoldengateDeploymentTypes. + + Attributes: + parent (str): + Required. The parent resource. + Format: projects/{project}/locations/{location} + page_size (int): + Optional. Requested page size. Server may + return fewer items than requested. If + unspecified, server will pick an appropriate + default. + page_token (str): + Optional. A token identifying a page of + results the server should return. + filter (str): + Optional. An expression for filtering the results of the + request. Either the deployment_type and ogg_version fields + must be specified in the format: + ``deployment_type="DATABASE_ORACLE"`` or + ``ogg_version="version"``. Allowed values for + deployment_type are: ``DATABASE_ORACLE``, ``BIGDATA``, + ``DATABASE_MICROSOFT_SQLSERVER``, ``DATABASE_MYSQL``, + ``DATABASE_POSTGRESQL``, ``DATABASE_DB2ZOS``, + ``DATABASE_DB2I``, ``GGSA``, ``DATA_TRANSFORMS``. + order_by (str): + Optional. Hint for how to order the results + """ + + parent: str = proto.Field( + proto.STRING, + number=1, + ) + page_size: int = proto.Field( + proto.INT32, + number=2, + ) + page_token: str = proto.Field( + proto.STRING, + number=3, + ) + filter: str = proto.Field( + proto.STRING, + number=4, + ) + order_by: str = proto.Field( + proto.STRING, + number=5, + ) + + +class ListGoldengateDeploymentTypesResponse(proto.Message): + r"""Message for response to listing GoldengateDeploymentTypes + + Attributes: + goldengate_deployment_types (MutableSequence[google.cloud.oracledatabase_v1.types.GoldengateDeploymentType]): + The list of GoldengateDeploymentType + next_page_token (str): + A token, which can be sent as ``page_token`` to retrieve the + next page. If this field is omitted, there are no subsequent + pages. + unreachable (MutableSequence[str]): + Unordered list. The resource names of + locations that could not be reached. + """ + + @property + def raw_page(self): + return self + + goldengate_deployment_types: MutableSequence["GoldengateDeploymentType"] = ( + proto.RepeatedField( + proto.MESSAGE, + number=1, + message="GoldengateDeploymentType", + ) + ) + next_page_token: str = proto.Field( + proto.STRING, + number=2, + ) + unreachable: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=3, + ) + + +__all__ = tuple(sorted(__protobuf__.manifest)) diff --git a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_deployment_version.py b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_deployment_version.py new file mode 100644 index 000000000000..04c76c522e15 --- /dev/null +++ b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/goldengate_deployment_version.py @@ -0,0 +1,280 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +from __future__ import annotations + +from typing import MutableMapping, MutableSequence + +import google.protobuf.timestamp_pb2 as timestamp_pb2 # type: ignore +import proto # type: ignore + +__protobuf__ = proto.module( + package="google.cloud.oracledatabase.v1", + manifest={ + "GoldengateDeploymentVersion", + "GoldengateDeploymentVersionProperties", + "GetGoldengateDeploymentVersionRequest", + "ListGoldengateDeploymentVersionsRequest", + "ListGoldengateDeploymentVersionsResponse", + }, +) + + +class GoldengateDeploymentVersion(proto.Message): + r"""Details of the Goldengate Deployment Version resource. + + Attributes: + name (str): + Identifier. The name of the Goldengate Deployment Version + resource with the format: + projects/{project}/locations/{location}/goldengateDeploymentVersions/{goldengate_deployment_version} + ocid (str): + Output only. The deployment version ocid of + the Goldengate Deployment Version resource. + properties (google.cloud.oracledatabase_v1.types.GoldengateDeploymentVersionProperties): + Output only. The technology type of the + Goldengate Deployment Version resource. + """ + + name: str = proto.Field( + proto.STRING, + number=1, + ) + ocid: str = proto.Field( + proto.STRING, + number=2, + ) + properties: "GoldengateDeploymentVersionProperties" = proto.Field( + proto.MESSAGE, + number=3, + message="GoldengateDeploymentVersionProperties", + ) + + +class GoldengateDeploymentVersionProperties(proto.Message): + r"""Properties of GoldengateDeploymentVersion. + + Attributes: + deployment_type (google.cloud.oracledatabase_v1.types.GoldengateDeploymentVersionProperties.DeploymentType): + Output only. The deployment type of the + Goldengate Deployment Version resource. + security_fix (bool): + Optional. Whether the Goldengate Deployment + Version resource is a security fix. + ogg_version (str): + Output only. The OGG version of the + Goldengate Deployment Version resource. + release_type (google.cloud.oracledatabase_v1.types.GoldengateDeploymentVersionProperties.DeploymentReleaseType): + Output only. The release type of the + Goldengate Deployment Version resource. + release_time (google.protobuf.timestamp_pb2.Timestamp): + Output only. The release time of the + Goldengate Deployment Version resource. + support_end_time (google.protobuf.timestamp_pb2.Timestamp): + Output only. The support end time of the + Goldengate Deployment Version resource. + """ + + class DeploymentType(proto.Enum): + r"""The deployment type of the Goldengate Deployment Version + resource. + + Values: + DEPLOYMENT_TYPE_UNSPECIFIED (0): + Default unspecified value. + OGG (1): + Goldengate Deployment Type category is OGG. + DATABASE_ORACLE (2): + Goldengate Deployment Type category is DATABASE_ORACLE. + BIGDATA (3): + Goldengate Deployment Type category is + BIGDATA. + DATABASE_MICROSOFT_SQLSERVER (4): + Goldengate Deployment Type category is + DATABASE_MICROSOFT_SQLSERVER. + DATABASE_MYSQL (5): + Goldengate Deployment Type category is DATABASE_MYSQL. + DATABASE_POSTGRESQL (6): + Goldengate Deployment Type category is DATABASE_POSTGRESQL. + DATABASE_DB2ZOS (7): + Goldengate Deployment Type category is DATABASE_DB2ZOS. + DATABASE_DB2I (8): + Goldengate Deployment Type category is DATABASE_DB2I. + GGSA (9): + Goldengate Deployment Type category is GGSA. + DATA_TRANSFORMS (10): + Goldengate Deployment Type category is DATA_TRANSFORMS. + """ + + DEPLOYMENT_TYPE_UNSPECIFIED = 0 + OGG = 1 + DATABASE_ORACLE = 2 + BIGDATA = 3 + DATABASE_MICROSOFT_SQLSERVER = 4 + DATABASE_MYSQL = 5 + DATABASE_POSTGRESQL = 6 + DATABASE_DB2ZOS = 7 + DATABASE_DB2I = 8 + GGSA = 9 + DATA_TRANSFORMS = 10 + + class DeploymentReleaseType(proto.Enum): + r"""The release type of the Goldengate Deployment Version + resource. + + Values: + DEPLOYMENT_RELEASE_TYPE_UNSPECIFIED (0): + Default unspecified value. + MAJOR (1): + Goldengate Deployment Version release type is + MAJOR. + BUNDLE (2): + Goldengate Deployment Version release type is + BUNDLE. + MINOR (3): + Goldengate Deployment Version release type is + MINOR. + """ + + DEPLOYMENT_RELEASE_TYPE_UNSPECIFIED = 0 + MAJOR = 1 + BUNDLE = 2 + MINOR = 3 + + deployment_type: DeploymentType = proto.Field( + proto.ENUM, + number=1, + enum=DeploymentType, + ) + security_fix: bool = proto.Field( + proto.BOOL, + number=2, + ) + ogg_version: str = proto.Field( + proto.STRING, + number=3, + ) + release_type: DeploymentReleaseType = proto.Field( + proto.ENUM, + number=4, + enum=DeploymentReleaseType, + ) + release_time: timestamp_pb2.Timestamp = proto.Field( + proto.MESSAGE, + number=5, + message=timestamp_pb2.Timestamp, + ) + support_end_time: timestamp_pb2.Timestamp = proto.Field( + proto.MESSAGE, + number=6, + message=timestamp_pb2.Timestamp, + ) + + +class GetGoldengateDeploymentVersionRequest(proto.Message): + r"""Message for getting a GoldengateDeploymentVersion. + + Attributes: + name (str): + Required. The name of the GoldengateDeploymentVersion to + retrieve. Format: + projects/{project}/locations/{location}/goldengateDeploymentVersions/{goldengate_deployment_version} + """ + + name: str = proto.Field( + proto.STRING, + number=1, + ) + + +class ListGoldengateDeploymentVersionsRequest(proto.Message): + r"""Message for listing GoldengateDeploymentVersions. + + Attributes: + parent (str): + Required. Parent value for + ListGoldengateDeploymentVersionsRequest Format: + projects/{project}/locations/{location} + page_size (int): + Optional. Requested page size. Server may + return fewer items than requested. If + unspecified, server will pick an appropriate + default. The maximum value is 1000; values above + 1000 will be coerced to 1000. + page_token (str): + Optional. A token identifying a page of + results the server should return. + filter (str): + Optional. An expression for filtering the results of the + request. Either the deployment_id and deployment_type fields + must be specified in the format: ``deployment_id="id"`` or + ``deployment_type="DATABASE_ORACLE"``. + """ + + parent: str = proto.Field( + proto.STRING, + number=1, + ) + page_size: int = proto.Field( + proto.INT32, + number=2, + ) + page_token: str = proto.Field( + proto.STRING, + number=3, + ) + filter: str = proto.Field( + proto.STRING, + number=4, + ) + + +class ListGoldengateDeploymentVersionsResponse(proto.Message): + r"""Message for response to listing GoldengateDeploymentVersions + + Attributes: + goldengate_deployment_versions (MutableSequence[google.cloud.oracledatabase_v1.types.GoldengateDeploymentVersion]): + The list of GoldengateDeploymentVersion + next_page_token (str): + A token, which can be sent as ``page_token`` to retrieve the + next page. If this field is omitted, there are no subsequent + pages. + unreachable (MutableSequence[str]): + Unordered list. Locations that could not be + reached. + """ + + @property + def raw_page(self): + return self + + goldengate_deployment_versions: MutableSequence["GoldengateDeploymentVersion"] = ( + proto.RepeatedField( + proto.MESSAGE, + number=1, + message="GoldengateDeploymentVersion", + ) + ) + next_page_token: str = proto.Field( + proto.STRING, + number=2, + ) + unreachable: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=3, + ) + + +__all__ = tuple(sorted(__protobuf__.manifest)) diff --git a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/oracledatabase.py b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/oracledatabase.py index 48d99ab2bb90..1d3b2ed6caa4 100644 --- a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/oracledatabase.py +++ b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/oracledatabase.py @@ -150,6 +150,10 @@ class ListCloudExadataInfrastructuresResponse(proto.Message): The list of Exadata Infrastructures. next_page_token (str): A token for fetching next page of response. + unreachable (MutableSequence[str]): + Unreachable locations when listing resources + across all locations using wildcard location + '-'. """ @property @@ -167,6 +171,10 @@ def raw_page(self): proto.STRING, number=2, ) + unreachable: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=3, + ) class GetCloudExadataInfrastructureRequest(proto.Message): @@ -326,6 +334,10 @@ class ListCloudVmClustersResponse(proto.Message): The list of VM Clusters. next_page_token (str): A token to fetch the next page of results. + unreachable (MutableSequence[str]): + Unreachable locations when listing resources + across all locations using wildcard location + '-'. """ @property @@ -341,6 +353,10 @@ def raw_page(self): proto.STRING, number=2, ) + unreachable: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=3, + ) class GetCloudVmClusterRequest(proto.Message): @@ -886,6 +902,10 @@ class ListAutonomousDatabasesResponse(proto.Message): next_page_token (str): A token identifying a page of results the server should return. + unreachable (MutableSequence[str]): + Unreachable locations when listing resources + across all locations using wildcard location + '-'. """ @property @@ -903,6 +923,10 @@ def raw_page(self): proto.STRING, number=2, ) + unreachable: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=3, + ) class GetAutonomousDatabaseRequest(proto.Message): @@ -1129,8 +1153,9 @@ class SwitchoverAutonomousDatabaseRequest(proto.Message): following format: projects/{project}/locations/{location}/autonomousDatabases/{autonomous_database}. peer_autonomous_database (str): - Required. The peer database name to switch - over to. + Optional. The peer database name to switch + over to. Required for cross-region standby, and + must be omitted for in-region Data Guard. """ name: str = proto.Field( @@ -1152,8 +1177,9 @@ class FailoverAutonomousDatabaseRequest(proto.Message): following format: projects/{project}/locations/{location}/autonomousDatabases/{autonomous_database}. peer_autonomous_database (str): - Required. The peer database name to fail over - to. + Optional. The peer database name to fail over + to. Required for cross-region standby, and must + be omitted for in-region Data Guard. """ name: str = proto.Field( @@ -1588,6 +1614,10 @@ class ListExadbVmClustersResponse(proto.Message): next_page_token (str): A token identifying a page of results the server should return. + unreachable (MutableSequence[str]): + Unreachable locations when listing resources + across all locations using wildcard location + '-'. """ @property @@ -1605,6 +1635,10 @@ def raw_page(self): proto.STRING, number=2, ) + unreachable: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=3, + ) class UpdateExadbVmClusterRequest(proto.Message): diff --git a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/vm_cluster.py b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/vm_cluster.py index daa1d54eb03d..6e9e5a276313 100644 --- a/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/vm_cluster.py +++ b/packages/google-cloud-oracledatabase/google/cloud/oracledatabase_v1/types/vm_cluster.py @@ -202,9 +202,9 @@ class CloudVmClusterProperties(proto.Message): state (google.cloud.oracledatabase_v1.types.CloudVmClusterProperties.State): Output only. State of the cluster. scan_listener_port_tcp (int): - Output only. SCAN listener port - TCP + Optional. SCAN listener port - TCP scan_listener_port_tcp_ssl (int): - Output only. SCAN listener port - TLS + Optional. SCAN listener port - TLS domain (str): Output only. Parent DNS domain where SCAN DNS and hosts names are qualified. ex: diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_create_goldengate_connection_assignment_async.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_create_goldengate_connection_assignment_async.py new file mode 100644 index 000000000000..e36779d1f849 --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_create_goldengate_connection_assignment_async.py @@ -0,0 +1,69 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for CreateGoldengateConnectionAssignment +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_CreateGoldengateConnectionAssignment_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +async def sample_create_goldengate_connection_assignment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + goldengate_connection_assignment = ( + oracledatabase_v1.GoldengateConnectionAssignment() + ) + goldengate_connection_assignment.properties.goldengate_connection = ( + "goldengate_connection_value" + ) + goldengate_connection_assignment.properties.goldengate_deployment = ( + "goldengate_deployment_value" + ) + + request = oracledatabase_v1.CreateGoldengateConnectionAssignmentRequest( + parent="parent_value", + goldengate_connection_assignment_id="goldengate_connection_assignment_id_value", + goldengate_connection_assignment=goldengate_connection_assignment, + ) + + # Make the request + operation = await client.create_goldengate_connection_assignment(request=request) + + print("Waiting for operation to complete...") + + response = await operation.result() + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_CreateGoldengateConnectionAssignment_async] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_create_goldengate_connection_assignment_sync.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_create_goldengate_connection_assignment_sync.py new file mode 100644 index 000000000000..a7fd4fb6c33f --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_create_goldengate_connection_assignment_sync.py @@ -0,0 +1,69 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for CreateGoldengateConnectionAssignment +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_CreateGoldengateConnectionAssignment_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +def sample_create_goldengate_connection_assignment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + goldengate_connection_assignment = ( + oracledatabase_v1.GoldengateConnectionAssignment() + ) + goldengate_connection_assignment.properties.goldengate_connection = ( + "goldengate_connection_value" + ) + goldengate_connection_assignment.properties.goldengate_deployment = ( + "goldengate_deployment_value" + ) + + request = oracledatabase_v1.CreateGoldengateConnectionAssignmentRequest( + parent="parent_value", + goldengate_connection_assignment_id="goldengate_connection_assignment_id_value", + goldengate_connection_assignment=goldengate_connection_assignment, + ) + + # Make the request + operation = client.create_goldengate_connection_assignment(request=request) + + print("Waiting for operation to complete...") + + response = operation.result() + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_CreateGoldengateConnectionAssignment_sync] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_create_goldengate_connection_async.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_create_goldengate_connection_async.py new file mode 100644 index 000000000000..58411419e995 --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_create_goldengate_connection_async.py @@ -0,0 +1,66 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for CreateGoldengateConnection +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_CreateGoldengateConnection_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +async def sample_create_goldengate_connection(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + goldengate_connection = oracledatabase_v1.GoldengateConnection() + goldengate_connection.properties.oracle_connection_properties.password = ( + "password_value" + ) + goldengate_connection.properties.connection_type = "ICEBERG" + goldengate_connection.properties.display_name = "display_name_value" + + request = oracledatabase_v1.CreateGoldengateConnectionRequest( + parent="parent_value", + goldengate_connection_id="goldengate_connection_id_value", + goldengate_connection=goldengate_connection, + ) + + # Make the request + operation = await client.create_goldengate_connection(request=request) + + print("Waiting for operation to complete...") + + response = await operation.result() + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_CreateGoldengateConnection_async] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_create_goldengate_connection_sync.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_create_goldengate_connection_sync.py new file mode 100644 index 000000000000..b7351bdcd03f --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_create_goldengate_connection_sync.py @@ -0,0 +1,66 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for CreateGoldengateConnection +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_CreateGoldengateConnection_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +def sample_create_goldengate_connection(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + goldengate_connection = oracledatabase_v1.GoldengateConnection() + goldengate_connection.properties.oracle_connection_properties.password = ( + "password_value" + ) + goldengate_connection.properties.connection_type = "ICEBERG" + goldengate_connection.properties.display_name = "display_name_value" + + request = oracledatabase_v1.CreateGoldengateConnectionRequest( + parent="parent_value", + goldengate_connection_id="goldengate_connection_id_value", + goldengate_connection=goldengate_connection, + ) + + # Make the request + operation = client.create_goldengate_connection(request=request) + + print("Waiting for operation to complete...") + + response = operation.result() + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_CreateGoldengateConnection_sync] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_create_goldengate_deployment_async.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_create_goldengate_deployment_async.py new file mode 100644 index 000000000000..1d0e5998b2b5 --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_create_goldengate_deployment_async.py @@ -0,0 +1,67 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for CreateGoldengateDeployment +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_CreateGoldengateDeployment_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +async def sample_create_goldengate_deployment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + goldengate_deployment = oracledatabase_v1.GoldengateDeployment() + goldengate_deployment.properties.deployment_type = "deployment_type_value" + goldengate_deployment.properties.ogg_data.admin_password = "admin_password_value" + goldengate_deployment.properties.ogg_data.deployment = "deployment_value" + goldengate_deployment.properties.ogg_data.admin_username = "admin_username_value" + goldengate_deployment.odb_subnet = "odb_subnet_value" + goldengate_deployment.display_name = "display_name_value" + + request = oracledatabase_v1.CreateGoldengateDeploymentRequest( + parent="parent_value", + goldengate_deployment_id="goldengate_deployment_id_value", + goldengate_deployment=goldengate_deployment, + ) + + # Make the request + operation = await client.create_goldengate_deployment(request=request) + + print("Waiting for operation to complete...") + + response = await operation.result() + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_CreateGoldengateDeployment_async] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_create_goldengate_deployment_sync.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_create_goldengate_deployment_sync.py new file mode 100644 index 000000000000..4b9e6fdf44d6 --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_create_goldengate_deployment_sync.py @@ -0,0 +1,67 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for CreateGoldengateDeployment +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_CreateGoldengateDeployment_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +def sample_create_goldengate_deployment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + goldengate_deployment = oracledatabase_v1.GoldengateDeployment() + goldengate_deployment.properties.deployment_type = "deployment_type_value" + goldengate_deployment.properties.ogg_data.admin_password = "admin_password_value" + goldengate_deployment.properties.ogg_data.deployment = "deployment_value" + goldengate_deployment.properties.ogg_data.admin_username = "admin_username_value" + goldengate_deployment.odb_subnet = "odb_subnet_value" + goldengate_deployment.display_name = "display_name_value" + + request = oracledatabase_v1.CreateGoldengateDeploymentRequest( + parent="parent_value", + goldengate_deployment_id="goldengate_deployment_id_value", + goldengate_deployment=goldengate_deployment, + ) + + # Make the request + operation = client.create_goldengate_deployment(request=request) + + print("Waiting for operation to complete...") + + response = operation.result() + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_CreateGoldengateDeployment_sync] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_delete_goldengate_connection_assignment_async.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_delete_goldengate_connection_assignment_async.py new file mode 100644 index 000000000000..d3b1a16bb4ab --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_delete_goldengate_connection_assignment_async.py @@ -0,0 +1,57 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for DeleteGoldengateConnectionAssignment +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_DeleteGoldengateConnectionAssignment_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +async def sample_delete_goldengate_connection_assignment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.DeleteGoldengateConnectionAssignmentRequest( + name="name_value", + ) + + # Make the request + operation = await client.delete_goldengate_connection_assignment(request=request) + + print("Waiting for operation to complete...") + + response = await operation.result() + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_DeleteGoldengateConnectionAssignment_async] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_delete_goldengate_connection_assignment_sync.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_delete_goldengate_connection_assignment_sync.py new file mode 100644 index 000000000000..16933eaa613d --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_delete_goldengate_connection_assignment_sync.py @@ -0,0 +1,57 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for DeleteGoldengateConnectionAssignment +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_DeleteGoldengateConnectionAssignment_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +def sample_delete_goldengate_connection_assignment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.DeleteGoldengateConnectionAssignmentRequest( + name="name_value", + ) + + # Make the request + operation = client.delete_goldengate_connection_assignment(request=request) + + print("Waiting for operation to complete...") + + response = operation.result() + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_DeleteGoldengateConnectionAssignment_sync] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_delete_goldengate_connection_async.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_delete_goldengate_connection_async.py new file mode 100644 index 000000000000..ce3732a8bc55 --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_delete_goldengate_connection_async.py @@ -0,0 +1,57 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for DeleteGoldengateConnection +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_DeleteGoldengateConnection_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +async def sample_delete_goldengate_connection(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.DeleteGoldengateConnectionRequest( + name="name_value", + ) + + # Make the request + operation = await client.delete_goldengate_connection(request=request) + + print("Waiting for operation to complete...") + + response = await operation.result() + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_DeleteGoldengateConnection_async] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_delete_goldengate_connection_sync.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_delete_goldengate_connection_sync.py new file mode 100644 index 000000000000..a254804fdf20 --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_delete_goldengate_connection_sync.py @@ -0,0 +1,57 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for DeleteGoldengateConnection +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_DeleteGoldengateConnection_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +def sample_delete_goldengate_connection(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.DeleteGoldengateConnectionRequest( + name="name_value", + ) + + # Make the request + operation = client.delete_goldengate_connection(request=request) + + print("Waiting for operation to complete...") + + response = operation.result() + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_DeleteGoldengateConnection_sync] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_delete_goldengate_deployment_async.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_delete_goldengate_deployment_async.py new file mode 100644 index 000000000000..b248b9ca8003 --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_delete_goldengate_deployment_async.py @@ -0,0 +1,57 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for DeleteGoldengateDeployment +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_DeleteGoldengateDeployment_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +async def sample_delete_goldengate_deployment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.DeleteGoldengateDeploymentRequest( + name="name_value", + ) + + # Make the request + operation = await client.delete_goldengate_deployment(request=request) + + print("Waiting for operation to complete...") + + response = await operation.result() + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_DeleteGoldengateDeployment_async] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_delete_goldengate_deployment_sync.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_delete_goldengate_deployment_sync.py new file mode 100644 index 000000000000..ac319d7a52ce --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_delete_goldengate_deployment_sync.py @@ -0,0 +1,57 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for DeleteGoldengateDeployment +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_DeleteGoldengateDeployment_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +def sample_delete_goldengate_deployment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.DeleteGoldengateDeploymentRequest( + name="name_value", + ) + + # Make the request + operation = client.delete_goldengate_deployment(request=request) + + print("Waiting for operation to complete...") + + response = operation.result() + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_DeleteGoldengateDeployment_sync] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_failover_autonomous_database_async.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_failover_autonomous_database_async.py index 6e3e8691f557..bab1e7576d56 100644 --- a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_failover_autonomous_database_async.py +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_failover_autonomous_database_async.py @@ -41,7 +41,6 @@ async def sample_failover_autonomous_database(): # Initialize request argument(s) request = oracledatabase_v1.FailoverAutonomousDatabaseRequest( name="name_value", - peer_autonomous_database="peer_autonomous_database_value", ) # Make the request diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_failover_autonomous_database_sync.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_failover_autonomous_database_sync.py index 87c4949f4a72..b8b4b032f4fe 100644 --- a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_failover_autonomous_database_sync.py +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_failover_autonomous_database_sync.py @@ -41,7 +41,6 @@ def sample_failover_autonomous_database(): # Initialize request argument(s) request = oracledatabase_v1.FailoverAutonomousDatabaseRequest( name="name_value", - peer_autonomous_database="peer_autonomous_database_value", ) # Make the request diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_connection_assignment_async.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_connection_assignment_async.py new file mode 100644 index 000000000000..a75fb8b2f908 --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_connection_assignment_async.py @@ -0,0 +1,53 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for GetGoldengateConnectionAssignment +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_GetGoldengateConnectionAssignment_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +async def sample_get_goldengate_connection_assignment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.GetGoldengateConnectionAssignmentRequest( + name="name_value", + ) + + # Make the request + response = await client.get_goldengate_connection_assignment(request=request) + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_GetGoldengateConnectionAssignment_async] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_connection_assignment_sync.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_connection_assignment_sync.py new file mode 100644 index 000000000000..8406a09d83d5 --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_connection_assignment_sync.py @@ -0,0 +1,53 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for GetGoldengateConnectionAssignment +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_GetGoldengateConnectionAssignment_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +def sample_get_goldengate_connection_assignment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.GetGoldengateConnectionAssignmentRequest( + name="name_value", + ) + + # Make the request + response = client.get_goldengate_connection_assignment(request=request) + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_GetGoldengateConnectionAssignment_sync] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_connection_async.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_connection_async.py new file mode 100644 index 000000000000..15a6967012bc --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_connection_async.py @@ -0,0 +1,53 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for GetGoldengateConnection +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_GetGoldengateConnection_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +async def sample_get_goldengate_connection(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.GetGoldengateConnectionRequest( + name="name_value", + ) + + # Make the request + response = await client.get_goldengate_connection(request=request) + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_GetGoldengateConnection_async] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_connection_sync.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_connection_sync.py new file mode 100644 index 000000000000..1659d13b0669 --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_connection_sync.py @@ -0,0 +1,53 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for GetGoldengateConnection +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_GetGoldengateConnection_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +def sample_get_goldengate_connection(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.GetGoldengateConnectionRequest( + name="name_value", + ) + + # Make the request + response = client.get_goldengate_connection(request=request) + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_GetGoldengateConnection_sync] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_connection_type_async.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_connection_type_async.py new file mode 100644 index 000000000000..d59cb77e131a --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_connection_type_async.py @@ -0,0 +1,53 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for GetGoldengateConnectionType +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_GetGoldengateConnectionType_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +async def sample_get_goldengate_connection_type(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.GetGoldengateConnectionTypeRequest( + name="name_value", + ) + + # Make the request + response = await client.get_goldengate_connection_type(request=request) + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_GetGoldengateConnectionType_async] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_connection_type_sync.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_connection_type_sync.py new file mode 100644 index 000000000000..efb71477e349 --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_connection_type_sync.py @@ -0,0 +1,53 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for GetGoldengateConnectionType +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_GetGoldengateConnectionType_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +def sample_get_goldengate_connection_type(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.GetGoldengateConnectionTypeRequest( + name="name_value", + ) + + # Make the request + response = client.get_goldengate_connection_type(request=request) + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_GetGoldengateConnectionType_sync] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_async.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_async.py new file mode 100644 index 000000000000..1994b289ee5a --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_async.py @@ -0,0 +1,53 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for GetGoldengateDeployment +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_GetGoldengateDeployment_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +async def sample_get_goldengate_deployment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.GetGoldengateDeploymentRequest( + name="name_value", + ) + + # Make the request + response = await client.get_goldengate_deployment(request=request) + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_GetGoldengateDeployment_async] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_environment_async.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_environment_async.py new file mode 100644 index 000000000000..25a2fa4dd733 --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_environment_async.py @@ -0,0 +1,53 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for GetGoldengateDeploymentEnvironment +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_GetGoldengateDeploymentEnvironment_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +async def sample_get_goldengate_deployment_environment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.GetGoldengateDeploymentEnvironmentRequest( + name="name_value", + ) + + # Make the request + response = await client.get_goldengate_deployment_environment(request=request) + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_GetGoldengateDeploymentEnvironment_async] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_environment_sync.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_environment_sync.py new file mode 100644 index 000000000000..1cf4864f65d6 --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_environment_sync.py @@ -0,0 +1,53 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for GetGoldengateDeploymentEnvironment +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_GetGoldengateDeploymentEnvironment_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +def sample_get_goldengate_deployment_environment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.GetGoldengateDeploymentEnvironmentRequest( + name="name_value", + ) + + # Make the request + response = client.get_goldengate_deployment_environment(request=request) + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_GetGoldengateDeploymentEnvironment_sync] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_sync.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_sync.py new file mode 100644 index 000000000000..a57d19b10638 --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_sync.py @@ -0,0 +1,53 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for GetGoldengateDeployment +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_GetGoldengateDeployment_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +def sample_get_goldengate_deployment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.GetGoldengateDeploymentRequest( + name="name_value", + ) + + # Make the request + response = client.get_goldengate_deployment(request=request) + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_GetGoldengateDeployment_sync] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_type_async.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_type_async.py new file mode 100644 index 000000000000..347daf35a32a --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_type_async.py @@ -0,0 +1,53 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for GetGoldengateDeploymentType +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_GetGoldengateDeploymentType_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +async def sample_get_goldengate_deployment_type(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.GetGoldengateDeploymentTypeRequest( + name="name_value", + ) + + # Make the request + response = await client.get_goldengate_deployment_type(request=request) + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_GetGoldengateDeploymentType_async] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_type_sync.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_type_sync.py new file mode 100644 index 000000000000..1d863b308017 --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_type_sync.py @@ -0,0 +1,53 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for GetGoldengateDeploymentType +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_GetGoldengateDeploymentType_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +def sample_get_goldengate_deployment_type(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.GetGoldengateDeploymentTypeRequest( + name="name_value", + ) + + # Make the request + response = client.get_goldengate_deployment_type(request=request) + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_GetGoldengateDeploymentType_sync] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_version_async.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_version_async.py new file mode 100644 index 000000000000..266a043a75d2 --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_version_async.py @@ -0,0 +1,53 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for GetGoldengateDeploymentVersion +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_GetGoldengateDeploymentVersion_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +async def sample_get_goldengate_deployment_version(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.GetGoldengateDeploymentVersionRequest( + name="name_value", + ) + + # Make the request + response = await client.get_goldengate_deployment_version(request=request) + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_GetGoldengateDeploymentVersion_async] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_version_sync.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_version_sync.py new file mode 100644 index 000000000000..1870b1192aae --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_version_sync.py @@ -0,0 +1,53 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for GetGoldengateDeploymentVersion +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_GetGoldengateDeploymentVersion_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +def sample_get_goldengate_deployment_version(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.GetGoldengateDeploymentVersionRequest( + name="name_value", + ) + + # Make the request + response = client.get_goldengate_deployment_version(request=request) + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_GetGoldengateDeploymentVersion_sync] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_connection_assignments_async.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_connection_assignments_async.py new file mode 100644 index 000000000000..b80df423bd1d --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_connection_assignments_async.py @@ -0,0 +1,54 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for ListGoldengateConnectionAssignments +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_ListGoldengateConnectionAssignments_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +async def sample_list_goldengate_connection_assignments(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListGoldengateConnectionAssignmentsRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_goldengate_connection_assignments(request=request) + + # Handle the response + async for response in page_result: + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_ListGoldengateConnectionAssignments_async] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_connection_assignments_sync.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_connection_assignments_sync.py new file mode 100644 index 000000000000..6fa5b5b62a2f --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_connection_assignments_sync.py @@ -0,0 +1,54 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for ListGoldengateConnectionAssignments +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_ListGoldengateConnectionAssignments_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +def sample_list_goldengate_connection_assignments(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListGoldengateConnectionAssignmentsRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_goldengate_connection_assignments(request=request) + + # Handle the response + for response in page_result: + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_ListGoldengateConnectionAssignments_sync] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_connection_types_async.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_connection_types_async.py new file mode 100644 index 000000000000..6aafe8311ef7 --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_connection_types_async.py @@ -0,0 +1,54 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for ListGoldengateConnectionTypes +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_ListGoldengateConnectionTypes_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +async def sample_list_goldengate_connection_types(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListGoldengateConnectionTypesRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_goldengate_connection_types(request=request) + + # Handle the response + async for response in page_result: + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_ListGoldengateConnectionTypes_async] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_connection_types_sync.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_connection_types_sync.py new file mode 100644 index 000000000000..e78ad81e3641 --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_connection_types_sync.py @@ -0,0 +1,54 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for ListGoldengateConnectionTypes +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_ListGoldengateConnectionTypes_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +def sample_list_goldengate_connection_types(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListGoldengateConnectionTypesRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_goldengate_connection_types(request=request) + + # Handle the response + for response in page_result: + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_ListGoldengateConnectionTypes_sync] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_connections_async.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_connections_async.py new file mode 100644 index 000000000000..1c62f7caa17c --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_connections_async.py @@ -0,0 +1,54 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for ListGoldengateConnections +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_ListGoldengateConnections_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +async def sample_list_goldengate_connections(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListGoldengateConnectionsRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_goldengate_connections(request=request) + + # Handle the response + async for response in page_result: + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_ListGoldengateConnections_async] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_connections_sync.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_connections_sync.py new file mode 100644 index 000000000000..c8391073af47 --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_connections_sync.py @@ -0,0 +1,54 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for ListGoldengateConnections +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_ListGoldengateConnections_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +def sample_list_goldengate_connections(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListGoldengateConnectionsRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_goldengate_connections(request=request) + + # Handle the response + for response in page_result: + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_ListGoldengateConnections_sync] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_environments_async.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_environments_async.py new file mode 100644 index 000000000000..ba674ff15ec5 --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_environments_async.py @@ -0,0 +1,54 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for ListGoldengateDeploymentEnvironments +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_ListGoldengateDeploymentEnvironments_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +async def sample_list_goldengate_deployment_environments(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListGoldengateDeploymentEnvironmentsRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_goldengate_deployment_environments(request=request) + + # Handle the response + async for response in page_result: + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_ListGoldengateDeploymentEnvironments_async] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_environments_sync.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_environments_sync.py new file mode 100644 index 000000000000..b910048acdea --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_environments_sync.py @@ -0,0 +1,54 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for ListGoldengateDeploymentEnvironments +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_ListGoldengateDeploymentEnvironments_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +def sample_list_goldengate_deployment_environments(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListGoldengateDeploymentEnvironmentsRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_goldengate_deployment_environments(request=request) + + # Handle the response + for response in page_result: + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_ListGoldengateDeploymentEnvironments_sync] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_types_async.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_types_async.py new file mode 100644 index 000000000000..7924c246b7bd --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_types_async.py @@ -0,0 +1,54 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for ListGoldengateDeploymentTypes +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_ListGoldengateDeploymentTypes_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +async def sample_list_goldengate_deployment_types(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListGoldengateDeploymentTypesRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_goldengate_deployment_types(request=request) + + # Handle the response + async for response in page_result: + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_ListGoldengateDeploymentTypes_async] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_types_sync.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_types_sync.py new file mode 100644 index 000000000000..175adc9d91bc --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_types_sync.py @@ -0,0 +1,54 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for ListGoldengateDeploymentTypes +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_ListGoldengateDeploymentTypes_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +def sample_list_goldengate_deployment_types(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListGoldengateDeploymentTypesRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_goldengate_deployment_types(request=request) + + # Handle the response + for response in page_result: + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_ListGoldengateDeploymentTypes_sync] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_versions_async.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_versions_async.py new file mode 100644 index 000000000000..1df60f6544b5 --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_versions_async.py @@ -0,0 +1,54 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for ListGoldengateDeploymentVersions +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_ListGoldengateDeploymentVersions_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +async def sample_list_goldengate_deployment_versions(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListGoldengateDeploymentVersionsRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_goldengate_deployment_versions(request=request) + + # Handle the response + async for response in page_result: + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_ListGoldengateDeploymentVersions_async] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_versions_sync.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_versions_sync.py new file mode 100644 index 000000000000..1d687202021a --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_versions_sync.py @@ -0,0 +1,54 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for ListGoldengateDeploymentVersions +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_ListGoldengateDeploymentVersions_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +def sample_list_goldengate_deployment_versions(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListGoldengateDeploymentVersionsRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_goldengate_deployment_versions(request=request) + + # Handle the response + for response in page_result: + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_ListGoldengateDeploymentVersions_sync] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployments_async.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployments_async.py new file mode 100644 index 000000000000..b21cb469eb8c --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployments_async.py @@ -0,0 +1,54 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for ListGoldengateDeployments +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_ListGoldengateDeployments_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +async def sample_list_goldengate_deployments(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListGoldengateDeploymentsRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_goldengate_deployments(request=request) + + # Handle the response + async for response in page_result: + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_ListGoldengateDeployments_async] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployments_sync.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployments_sync.py new file mode 100644 index 000000000000..94d260dc452f --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_list_goldengate_deployments_sync.py @@ -0,0 +1,54 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for ListGoldengateDeployments +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_ListGoldengateDeployments_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +def sample_list_goldengate_deployments(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.ListGoldengateDeploymentsRequest( + parent="parent_value", + ) + + # Make the request + page_result = client.list_goldengate_deployments(request=request) + + # Handle the response + for response in page_result: + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_ListGoldengateDeployments_sync] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_start_goldengate_deployment_async.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_start_goldengate_deployment_async.py new file mode 100644 index 000000000000..4d99181c4168 --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_start_goldengate_deployment_async.py @@ -0,0 +1,57 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for StartGoldengateDeployment +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_StartGoldengateDeployment_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +async def sample_start_goldengate_deployment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.StartGoldengateDeploymentRequest( + name="name_value", + ) + + # Make the request + operation = await client.start_goldengate_deployment(request=request) + + print("Waiting for operation to complete...") + + response = await operation.result() + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_StartGoldengateDeployment_async] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_start_goldengate_deployment_sync.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_start_goldengate_deployment_sync.py new file mode 100644 index 000000000000..f1b0b29f1d94 --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_start_goldengate_deployment_sync.py @@ -0,0 +1,57 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for StartGoldengateDeployment +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_StartGoldengateDeployment_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +def sample_start_goldengate_deployment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.StartGoldengateDeploymentRequest( + name="name_value", + ) + + # Make the request + operation = client.start_goldengate_deployment(request=request) + + print("Waiting for operation to complete...") + + response = operation.result() + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_StartGoldengateDeployment_sync] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_stop_goldengate_deployment_async.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_stop_goldengate_deployment_async.py new file mode 100644 index 000000000000..66a2339b18af --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_stop_goldengate_deployment_async.py @@ -0,0 +1,57 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for StopGoldengateDeployment +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_StopGoldengateDeployment_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +async def sample_stop_goldengate_deployment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.StopGoldengateDeploymentRequest( + name="name_value", + ) + + # Make the request + operation = await client.stop_goldengate_deployment(request=request) + + print("Waiting for operation to complete...") + + response = await operation.result() + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_StopGoldengateDeployment_async] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_stop_goldengate_deployment_sync.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_stop_goldengate_deployment_sync.py new file mode 100644 index 000000000000..0617aa666eb9 --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_stop_goldengate_deployment_sync.py @@ -0,0 +1,57 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for StopGoldengateDeployment +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_StopGoldengateDeployment_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +def sample_stop_goldengate_deployment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.StopGoldengateDeploymentRequest( + name="name_value", + ) + + # Make the request + operation = client.stop_goldengate_deployment(request=request) + + print("Waiting for operation to complete...") + + response = operation.result() + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_StopGoldengateDeployment_sync] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_switchover_autonomous_database_async.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_switchover_autonomous_database_async.py index 26945f1620cc..7817f7ebfd03 100644 --- a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_switchover_autonomous_database_async.py +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_switchover_autonomous_database_async.py @@ -41,7 +41,6 @@ async def sample_switchover_autonomous_database(): # Initialize request argument(s) request = oracledatabase_v1.SwitchoverAutonomousDatabaseRequest( name="name_value", - peer_autonomous_database="peer_autonomous_database_value", ) # Make the request diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_switchover_autonomous_database_sync.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_switchover_autonomous_database_sync.py index 740d3d903be2..9f8ddb72fbbb 100644 --- a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_switchover_autonomous_database_sync.py +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_switchover_autonomous_database_sync.py @@ -41,7 +41,6 @@ def sample_switchover_autonomous_database(): # Initialize request argument(s) request = oracledatabase_v1.SwitchoverAutonomousDatabaseRequest( name="name_value", - peer_autonomous_database="peer_autonomous_database_value", ) # Make the request diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_test_goldengate_connection_assignment_async.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_test_goldengate_connection_assignment_async.py new file mode 100644 index 000000000000..0c519f3156fc --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_test_goldengate_connection_assignment_async.py @@ -0,0 +1,53 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for TestGoldengateConnectionAssignment +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_TestGoldengateConnectionAssignment_async] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +async def sample_test_goldengate_connection_assignment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseAsyncClient() + + # Initialize request argument(s) + request = oracledatabase_v1.TestGoldengateConnectionAssignmentRequest( + name="name_value", + ) + + # Make the request + response = await client.test_goldengate_connection_assignment(request=request) + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_TestGoldengateConnectionAssignment_async] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_test_goldengate_connection_assignment_sync.py b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_test_goldengate_connection_assignment_sync.py new file mode 100644 index 000000000000..b581fe9d028c --- /dev/null +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/oracledatabase_v1_generated_oracle_database_test_goldengate_connection_assignment_sync.py @@ -0,0 +1,53 @@ +# -*- coding: utf-8 -*- +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Generated code. DO NOT EDIT! +# +# Snippet for TestGoldengateConnectionAssignment +# NOTE: This snippet has been automatically generated for illustrative purposes only. +# It may require modifications to work in your environment. + +# To install the latest published package dependency, execute the following: +# python3 -m pip install google-cloud-oracledatabase + + +# [START oracledatabase_v1_generated_OracleDatabase_TestGoldengateConnectionAssignment_sync] +# This snippet has been automatically generated and should be regarded as a +# code template only. +# It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in: +# https://googleapis.dev/python/google-api-core/latest/client_options.html +from google.cloud import oracledatabase_v1 + + +def sample_test_goldengate_connection_assignment(): + # Create a client + client = oracledatabase_v1.OracleDatabaseClient() + + # Initialize request argument(s) + request = oracledatabase_v1.TestGoldengateConnectionAssignmentRequest( + name="name_value", + ) + + # Make the request + response = client.test_goldengate_connection_assignment(request=request) + + # Handle the response + print(response) + + +# [END oracledatabase_v1_generated_OracleDatabase_TestGoldengateConnectionAssignment_sync] diff --git a/packages/google-cloud-oracledatabase/samples/generated_samples/snippet_metadata_google.cloud.oracledatabase.v1.json b/packages/google-cloud-oracledatabase/samples/generated_samples/snippet_metadata_google.cloud.oracledatabase.v1.json index f6dfedaa0098..8dbb40f31646 100644 --- a/packages/google-cloud-oracledatabase/samples/generated_samples/snippet_metadata_google.cloud.oracledatabase.v1.json +++ b/packages/google-cloud-oracledatabase/samples/generated_samples/snippet_metadata_google.cloud.oracledatabase.v1.json @@ -1081,30 +1081,30 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.create_odb_network", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.create_goldengate_connection_assignment", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.CreateOdbNetwork", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.CreateGoldengateConnectionAssignment", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "CreateOdbNetwork" + "shortName": "CreateGoldengateConnectionAssignment" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.CreateOdbNetworkRequest" + "type": "google.cloud.oracledatabase_v1.types.CreateGoldengateConnectionAssignmentRequest" }, { "name": "parent", "type": "str" }, { - "name": "odb_network", - "type": "google.cloud.oracledatabase_v1.types.OdbNetwork" + "name": "goldengate_connection_assignment", + "type": "google.cloud.oracledatabase_v1.types.GoldengateConnectionAssignment" }, { - "name": "odb_network_id", + "name": "goldengate_connection_assignment_id", "type": "str" }, { @@ -1121,21 +1121,21 @@ } ], "resultType": "google.api_core.operation_async.AsyncOperation", - "shortName": "create_odb_network" + "shortName": "create_goldengate_connection_assignment" }, - "description": "Sample for CreateOdbNetwork", - "file": "oracledatabase_v1_generated_oracle_database_create_odb_network_async.py", + "description": "Sample for CreateGoldengateConnectionAssignment", + "file": "oracledatabase_v1_generated_oracle_database_create_goldengate_connection_assignment_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_CreateOdbNetwork_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_CreateGoldengateConnectionAssignment_async", "segments": [ { - "end": 60, + "end": 61, "start": 27, "type": "FULL" }, { - "end": 60, + "end": 61, "start": 27, "type": "SHORT" }, @@ -1145,22 +1145,22 @@ "type": "CLIENT_INITIALIZATION" }, { - "end": 50, + "end": 51, "start": 41, "type": "REQUEST_INITIALIZATION" }, { - "end": 57, - "start": 51, + "end": 58, + "start": 52, "type": "REQUEST_EXECUTION" }, { - "end": 61, - "start": 58, + "end": 62, + "start": 59, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_create_odb_network_async.py" + "title": "oracledatabase_v1_generated_oracle_database_create_goldengate_connection_assignment_async.py" }, { "canonical": true, @@ -1169,30 +1169,30 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.create_odb_network", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.create_goldengate_connection_assignment", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.CreateOdbNetwork", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.CreateGoldengateConnectionAssignment", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "CreateOdbNetwork" + "shortName": "CreateGoldengateConnectionAssignment" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.CreateOdbNetworkRequest" + "type": "google.cloud.oracledatabase_v1.types.CreateGoldengateConnectionAssignmentRequest" }, { "name": "parent", "type": "str" }, { - "name": "odb_network", - "type": "google.cloud.oracledatabase_v1.types.OdbNetwork" + "name": "goldengate_connection_assignment", + "type": "google.cloud.oracledatabase_v1.types.GoldengateConnectionAssignment" }, { - "name": "odb_network_id", + "name": "goldengate_connection_assignment_id", "type": "str" }, { @@ -1209,21 +1209,21 @@ } ], "resultType": "google.api_core.operation.Operation", - "shortName": "create_odb_network" + "shortName": "create_goldengate_connection_assignment" }, - "description": "Sample for CreateOdbNetwork", - "file": "oracledatabase_v1_generated_oracle_database_create_odb_network_sync.py", + "description": "Sample for CreateGoldengateConnectionAssignment", + "file": "oracledatabase_v1_generated_oracle_database_create_goldengate_connection_assignment_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_CreateOdbNetwork_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_CreateGoldengateConnectionAssignment_sync", "segments": [ { - "end": 60, + "end": 61, "start": 27, "type": "FULL" }, { - "end": 60, + "end": 61, "start": 27, "type": "SHORT" }, @@ -1233,22 +1233,22 @@ "type": "CLIENT_INITIALIZATION" }, { - "end": 50, + "end": 51, "start": 41, "type": "REQUEST_INITIALIZATION" }, { - "end": 57, - "start": 51, + "end": 58, + "start": 52, "type": "REQUEST_EXECUTION" }, { - "end": 61, - "start": 58, + "end": 62, + "start": 59, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_create_odb_network_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_create_goldengate_connection_assignment_sync.py" }, { "canonical": true, @@ -1258,30 +1258,30 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.create_odb_subnet", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.create_goldengate_connection", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.CreateOdbSubnet", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.CreateGoldengateConnection", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "CreateOdbSubnet" + "shortName": "CreateGoldengateConnection" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.CreateOdbSubnetRequest" + "type": "google.cloud.oracledatabase_v1.types.CreateGoldengateConnectionRequest" }, { "name": "parent", "type": "str" }, { - "name": "odb_subnet", - "type": "google.cloud.oracledatabase_v1.types.OdbSubnet" + "name": "goldengate_connection", + "type": "google.cloud.oracledatabase_v1.types.GoldengateConnection" }, { - "name": "odb_subnet_id", + "name": "goldengate_connection_id", "type": "str" }, { @@ -1298,21 +1298,21 @@ } ], "resultType": "google.api_core.operation_async.AsyncOperation", - "shortName": "create_odb_subnet" + "shortName": "create_goldengate_connection" }, - "description": "Sample for CreateOdbSubnet", - "file": "oracledatabase_v1_generated_oracle_database_create_odb_subnet_async.py", + "description": "Sample for CreateGoldengateConnection", + "file": "oracledatabase_v1_generated_oracle_database_create_goldengate_connection_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_CreateOdbSubnet_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_CreateGoldengateConnection_async", "segments": [ { - "end": 61, + "end": 62, "start": 27, "type": "FULL" }, { - "end": 61, + "end": 62, "start": 27, "type": "SHORT" }, @@ -1322,22 +1322,22 @@ "type": "CLIENT_INITIALIZATION" }, { - "end": 51, + "end": 52, "start": 41, "type": "REQUEST_INITIALIZATION" }, { - "end": 58, - "start": 52, + "end": 59, + "start": 53, "type": "REQUEST_EXECUTION" }, { - "end": 62, - "start": 59, + "end": 63, + "start": 60, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_create_odb_subnet_async.py" + "title": "oracledatabase_v1_generated_oracle_database_create_goldengate_connection_async.py" }, { "canonical": true, @@ -1346,30 +1346,30 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.create_odb_subnet", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.create_goldengate_connection", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.CreateOdbSubnet", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.CreateGoldengateConnection", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "CreateOdbSubnet" + "shortName": "CreateGoldengateConnection" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.CreateOdbSubnetRequest" + "type": "google.cloud.oracledatabase_v1.types.CreateGoldengateConnectionRequest" }, { "name": "parent", "type": "str" }, { - "name": "odb_subnet", - "type": "google.cloud.oracledatabase_v1.types.OdbSubnet" + "name": "goldengate_connection", + "type": "google.cloud.oracledatabase_v1.types.GoldengateConnection" }, { - "name": "odb_subnet_id", + "name": "goldengate_connection_id", "type": "str" }, { @@ -1386,21 +1386,21 @@ } ], "resultType": "google.api_core.operation.Operation", - "shortName": "create_odb_subnet" + "shortName": "create_goldengate_connection" }, - "description": "Sample for CreateOdbSubnet", - "file": "oracledatabase_v1_generated_oracle_database_create_odb_subnet_sync.py", + "description": "Sample for CreateGoldengateConnection", + "file": "oracledatabase_v1_generated_oracle_database_create_goldengate_connection_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_CreateOdbSubnet_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_CreateGoldengateConnection_sync", "segments": [ { - "end": 61, + "end": 62, "start": 27, "type": "FULL" }, { - "end": 61, + "end": 62, "start": 27, "type": "SHORT" }, @@ -1410,22 +1410,22 @@ "type": "CLIENT_INITIALIZATION" }, { - "end": 51, + "end": 52, "start": 41, "type": "REQUEST_INITIALIZATION" }, { - "end": 58, - "start": 52, + "end": 59, + "start": 53, "type": "REQUEST_EXECUTION" }, { - "end": 62, - "start": 59, + "end": 63, + "start": 60, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_create_odb_subnet_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_create_goldengate_connection_sync.py" }, { "canonical": true, @@ -1435,22 +1435,30 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.delete_autonomous_database", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.create_goldengate_deployment", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteAutonomousDatabase", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.CreateGoldengateDeployment", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "DeleteAutonomousDatabase" + "shortName": "CreateGoldengateDeployment" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.DeleteAutonomousDatabaseRequest" + "type": "google.cloud.oracledatabase_v1.types.CreateGoldengateDeploymentRequest" }, { - "name": "name", + "name": "parent", + "type": "str" + }, + { + "name": "goldengate_deployment", + "type": "google.cloud.oracledatabase_v1.types.GoldengateDeployment" + }, + { + "name": "goldengate_deployment_id", "type": "str" }, { @@ -1467,21 +1475,21 @@ } ], "resultType": "google.api_core.operation_async.AsyncOperation", - "shortName": "delete_autonomous_database" + "shortName": "create_goldengate_deployment" }, - "description": "Sample for DeleteAutonomousDatabase", - "file": "oracledatabase_v1_generated_oracle_database_delete_autonomous_database_async.py", + "description": "Sample for CreateGoldengateDeployment", + "file": "oracledatabase_v1_generated_oracle_database_create_goldengate_deployment_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteAutonomousDatabase_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_CreateGoldengateDeployment_async", "segments": [ { - "end": 55, + "end": 65, "start": 27, "type": "FULL" }, { - "end": 55, + "end": 65, "start": 27, "type": "SHORT" }, @@ -1491,22 +1499,22 @@ "type": "CLIENT_INITIALIZATION" }, { - "end": 45, + "end": 55, "start": 41, "type": "REQUEST_INITIALIZATION" }, { - "end": 52, - "start": 46, + "end": 62, + "start": 56, "type": "REQUEST_EXECUTION" }, { - "end": 56, - "start": 53, + "end": 66, + "start": 63, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_delete_autonomous_database_async.py" + "title": "oracledatabase_v1_generated_oracle_database_create_goldengate_deployment_async.py" }, { "canonical": true, @@ -1515,22 +1523,30 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_autonomous_database", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.create_goldengate_deployment", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteAutonomousDatabase", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.CreateGoldengateDeployment", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "DeleteAutonomousDatabase" + "shortName": "CreateGoldengateDeployment" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.DeleteAutonomousDatabaseRequest" + "type": "google.cloud.oracledatabase_v1.types.CreateGoldengateDeploymentRequest" }, { - "name": "name", + "name": "parent", + "type": "str" + }, + { + "name": "goldengate_deployment", + "type": "google.cloud.oracledatabase_v1.types.GoldengateDeployment" + }, + { + "name": "goldengate_deployment_id", "type": "str" }, { @@ -1547,21 +1563,21 @@ } ], "resultType": "google.api_core.operation.Operation", - "shortName": "delete_autonomous_database" + "shortName": "create_goldengate_deployment" }, - "description": "Sample for DeleteAutonomousDatabase", - "file": "oracledatabase_v1_generated_oracle_database_delete_autonomous_database_sync.py", + "description": "Sample for CreateGoldengateDeployment", + "file": "oracledatabase_v1_generated_oracle_database_create_goldengate_deployment_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteAutonomousDatabase_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_CreateGoldengateDeployment_sync", "segments": [ { - "end": 55, + "end": 65, "start": 27, "type": "FULL" }, { - "end": 55, + "end": 65, "start": 27, "type": "SHORT" }, @@ -1571,22 +1587,22 @@ "type": "CLIENT_INITIALIZATION" }, { - "end": 45, + "end": 55, "start": 41, "type": "REQUEST_INITIALIZATION" }, { - "end": 52, - "start": 46, + "end": 62, + "start": 56, "type": "REQUEST_EXECUTION" }, { - "end": 56, - "start": 53, + "end": 66, + "start": 63, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_delete_autonomous_database_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_create_goldengate_deployment_sync.py" }, { "canonical": true, @@ -1596,22 +1612,30 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.delete_cloud_exadata_infrastructure", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.create_odb_network", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteCloudExadataInfrastructure", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.CreateOdbNetwork", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "DeleteCloudExadataInfrastructure" + "shortName": "CreateOdbNetwork" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.DeleteCloudExadataInfrastructureRequest" + "type": "google.cloud.oracledatabase_v1.types.CreateOdbNetworkRequest" }, { - "name": "name", + "name": "parent", + "type": "str" + }, + { + "name": "odb_network", + "type": "google.cloud.oracledatabase_v1.types.OdbNetwork" + }, + { + "name": "odb_network_id", "type": "str" }, { @@ -1628,21 +1652,21 @@ } ], "resultType": "google.api_core.operation_async.AsyncOperation", - "shortName": "delete_cloud_exadata_infrastructure" + "shortName": "create_odb_network" }, - "description": "Sample for DeleteCloudExadataInfrastructure", - "file": "oracledatabase_v1_generated_oracle_database_delete_cloud_exadata_infrastructure_async.py", + "description": "Sample for CreateOdbNetwork", + "file": "oracledatabase_v1_generated_oracle_database_create_odb_network_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteCloudExadataInfrastructure_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_CreateOdbNetwork_async", "segments": [ { - "end": 55, + "end": 60, "start": 27, "type": "FULL" }, { - "end": 55, + "end": 60, "start": 27, "type": "SHORT" }, @@ -1652,22 +1676,22 @@ "type": "CLIENT_INITIALIZATION" }, { - "end": 45, + "end": 50, "start": 41, "type": "REQUEST_INITIALIZATION" }, { - "end": 52, - "start": 46, + "end": 57, + "start": 51, "type": "REQUEST_EXECUTION" }, { - "end": 56, - "start": 53, + "end": 61, + "start": 58, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_delete_cloud_exadata_infrastructure_async.py" + "title": "oracledatabase_v1_generated_oracle_database_create_odb_network_async.py" }, { "canonical": true, @@ -1676,22 +1700,30 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_cloud_exadata_infrastructure", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.create_odb_network", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteCloudExadataInfrastructure", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.CreateOdbNetwork", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "DeleteCloudExadataInfrastructure" + "shortName": "CreateOdbNetwork" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.DeleteCloudExadataInfrastructureRequest" + "type": "google.cloud.oracledatabase_v1.types.CreateOdbNetworkRequest" }, { - "name": "name", + "name": "parent", + "type": "str" + }, + { + "name": "odb_network", + "type": "google.cloud.oracledatabase_v1.types.OdbNetwork" + }, + { + "name": "odb_network_id", "type": "str" }, { @@ -1708,21 +1740,21 @@ } ], "resultType": "google.api_core.operation.Operation", - "shortName": "delete_cloud_exadata_infrastructure" + "shortName": "create_odb_network" }, - "description": "Sample for DeleteCloudExadataInfrastructure", - "file": "oracledatabase_v1_generated_oracle_database_delete_cloud_exadata_infrastructure_sync.py", + "description": "Sample for CreateOdbNetwork", + "file": "oracledatabase_v1_generated_oracle_database_create_odb_network_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteCloudExadataInfrastructure_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_CreateOdbNetwork_sync", "segments": [ { - "end": 55, + "end": 60, "start": 27, "type": "FULL" }, { - "end": 55, + "end": 60, "start": 27, "type": "SHORT" }, @@ -1732,22 +1764,22 @@ "type": "CLIENT_INITIALIZATION" }, { - "end": 45, + "end": 50, "start": 41, "type": "REQUEST_INITIALIZATION" }, { - "end": 52, - "start": 46, + "end": 57, + "start": 51, "type": "REQUEST_EXECUTION" }, { - "end": 56, - "start": 53, + "end": 61, + "start": 58, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_delete_cloud_exadata_infrastructure_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_create_odb_network_sync.py" }, { "canonical": true, @@ -1757,22 +1789,30 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.delete_cloud_vm_cluster", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.create_odb_subnet", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteCloudVmCluster", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.CreateOdbSubnet", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "DeleteCloudVmCluster" + "shortName": "CreateOdbSubnet" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.DeleteCloudVmClusterRequest" + "type": "google.cloud.oracledatabase_v1.types.CreateOdbSubnetRequest" }, { - "name": "name", + "name": "parent", + "type": "str" + }, + { + "name": "odb_subnet", + "type": "google.cloud.oracledatabase_v1.types.OdbSubnet" + }, + { + "name": "odb_subnet_id", "type": "str" }, { @@ -1789,21 +1829,21 @@ } ], "resultType": "google.api_core.operation_async.AsyncOperation", - "shortName": "delete_cloud_vm_cluster" + "shortName": "create_odb_subnet" }, - "description": "Sample for DeleteCloudVmCluster", - "file": "oracledatabase_v1_generated_oracle_database_delete_cloud_vm_cluster_async.py", + "description": "Sample for CreateOdbSubnet", + "file": "oracledatabase_v1_generated_oracle_database_create_odb_subnet_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteCloudVmCluster_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_CreateOdbSubnet_async", "segments": [ { - "end": 55, + "end": 61, "start": 27, "type": "FULL" }, { - "end": 55, + "end": 61, "start": 27, "type": "SHORT" }, @@ -1813,22 +1853,22 @@ "type": "CLIENT_INITIALIZATION" }, { - "end": 45, + "end": 51, "start": 41, "type": "REQUEST_INITIALIZATION" }, { - "end": 52, - "start": 46, + "end": 58, + "start": 52, "type": "REQUEST_EXECUTION" }, { - "end": 56, - "start": 53, + "end": 62, + "start": 59, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_delete_cloud_vm_cluster_async.py" + "title": "oracledatabase_v1_generated_oracle_database_create_odb_subnet_async.py" }, { "canonical": true, @@ -1837,22 +1877,30 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_cloud_vm_cluster", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.create_odb_subnet", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteCloudVmCluster", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.CreateOdbSubnet", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "DeleteCloudVmCluster" + "shortName": "CreateOdbSubnet" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.DeleteCloudVmClusterRequest" + "type": "google.cloud.oracledatabase_v1.types.CreateOdbSubnetRequest" }, { - "name": "name", + "name": "parent", + "type": "str" + }, + { + "name": "odb_subnet", + "type": "google.cloud.oracledatabase_v1.types.OdbSubnet" + }, + { + "name": "odb_subnet_id", "type": "str" }, { @@ -1869,21 +1917,21 @@ } ], "resultType": "google.api_core.operation.Operation", - "shortName": "delete_cloud_vm_cluster" + "shortName": "create_odb_subnet" }, - "description": "Sample for DeleteCloudVmCluster", - "file": "oracledatabase_v1_generated_oracle_database_delete_cloud_vm_cluster_sync.py", + "description": "Sample for CreateOdbSubnet", + "file": "oracledatabase_v1_generated_oracle_database_create_odb_subnet_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteCloudVmCluster_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_CreateOdbSubnet_sync", "segments": [ { - "end": 55, + "end": 61, "start": 27, "type": "FULL" }, { - "end": 55, + "end": 61, "start": 27, "type": "SHORT" }, @@ -1893,22 +1941,22 @@ "type": "CLIENT_INITIALIZATION" }, { - "end": 45, + "end": 51, "start": 41, "type": "REQUEST_INITIALIZATION" }, { - "end": 52, - "start": 46, + "end": 58, + "start": 52, "type": "REQUEST_EXECUTION" }, { - "end": 56, - "start": 53, + "end": 62, + "start": 59, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_delete_cloud_vm_cluster_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_create_odb_subnet_sync.py" }, { "canonical": true, @@ -1918,19 +1966,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.delete_db_system", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.delete_autonomous_database", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteDbSystem", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteAutonomousDatabase", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "DeleteDbSystem" + "shortName": "DeleteAutonomousDatabase" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.DeleteDbSystemRequest" + "type": "google.cloud.oracledatabase_v1.types.DeleteAutonomousDatabaseRequest" }, { "name": "name", @@ -1950,13 +1998,13 @@ } ], "resultType": "google.api_core.operation_async.AsyncOperation", - "shortName": "delete_db_system" + "shortName": "delete_autonomous_database" }, - "description": "Sample for DeleteDbSystem", - "file": "oracledatabase_v1_generated_oracle_database_delete_db_system_async.py", + "description": "Sample for DeleteAutonomousDatabase", + "file": "oracledatabase_v1_generated_oracle_database_delete_autonomous_database_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteDbSystem_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteAutonomousDatabase_async", "segments": [ { "end": 55, @@ -1989,7 +2037,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_delete_db_system_async.py" + "title": "oracledatabase_v1_generated_oracle_database_delete_autonomous_database_async.py" }, { "canonical": true, @@ -1998,19 +2046,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_db_system", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_autonomous_database", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteDbSystem", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteAutonomousDatabase", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "DeleteDbSystem" + "shortName": "DeleteAutonomousDatabase" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.DeleteDbSystemRequest" + "type": "google.cloud.oracledatabase_v1.types.DeleteAutonomousDatabaseRequest" }, { "name": "name", @@ -2030,13 +2078,13 @@ } ], "resultType": "google.api_core.operation.Operation", - "shortName": "delete_db_system" + "shortName": "delete_autonomous_database" }, - "description": "Sample for DeleteDbSystem", - "file": "oracledatabase_v1_generated_oracle_database_delete_db_system_sync.py", + "description": "Sample for DeleteAutonomousDatabase", + "file": "oracledatabase_v1_generated_oracle_database_delete_autonomous_database_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteDbSystem_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteAutonomousDatabase_sync", "segments": [ { "end": 55, @@ -2069,7 +2117,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_delete_db_system_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_delete_autonomous_database_sync.py" }, { "canonical": true, @@ -2079,19 +2127,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.delete_exadb_vm_cluster", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.delete_cloud_exadata_infrastructure", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteExadbVmCluster", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteCloudExadataInfrastructure", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "DeleteExadbVmCluster" + "shortName": "DeleteCloudExadataInfrastructure" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.DeleteExadbVmClusterRequest" + "type": "google.cloud.oracledatabase_v1.types.DeleteCloudExadataInfrastructureRequest" }, { "name": "name", @@ -2111,13 +2159,13 @@ } ], "resultType": "google.api_core.operation_async.AsyncOperation", - "shortName": "delete_exadb_vm_cluster" + "shortName": "delete_cloud_exadata_infrastructure" }, - "description": "Sample for DeleteExadbVmCluster", - "file": "oracledatabase_v1_generated_oracle_database_delete_exadb_vm_cluster_async.py", + "description": "Sample for DeleteCloudExadataInfrastructure", + "file": "oracledatabase_v1_generated_oracle_database_delete_cloud_exadata_infrastructure_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteExadbVmCluster_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteCloudExadataInfrastructure_async", "segments": [ { "end": 55, @@ -2150,7 +2198,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_delete_exadb_vm_cluster_async.py" + "title": "oracledatabase_v1_generated_oracle_database_delete_cloud_exadata_infrastructure_async.py" }, { "canonical": true, @@ -2159,19 +2207,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_exadb_vm_cluster", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_cloud_exadata_infrastructure", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteExadbVmCluster", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteCloudExadataInfrastructure", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "DeleteExadbVmCluster" + "shortName": "DeleteCloudExadataInfrastructure" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.DeleteExadbVmClusterRequest" + "type": "google.cloud.oracledatabase_v1.types.DeleteCloudExadataInfrastructureRequest" }, { "name": "name", @@ -2191,13 +2239,13 @@ } ], "resultType": "google.api_core.operation.Operation", - "shortName": "delete_exadb_vm_cluster" + "shortName": "delete_cloud_exadata_infrastructure" }, - "description": "Sample for DeleteExadbVmCluster", - "file": "oracledatabase_v1_generated_oracle_database_delete_exadb_vm_cluster_sync.py", + "description": "Sample for DeleteCloudExadataInfrastructure", + "file": "oracledatabase_v1_generated_oracle_database_delete_cloud_exadata_infrastructure_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteExadbVmCluster_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteCloudExadataInfrastructure_sync", "segments": [ { "end": 55, @@ -2230,7 +2278,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_delete_exadb_vm_cluster_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_delete_cloud_exadata_infrastructure_sync.py" }, { "canonical": true, @@ -2240,19 +2288,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.delete_exascale_db_storage_vault", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.delete_cloud_vm_cluster", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteExascaleDbStorageVault", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteCloudVmCluster", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "DeleteExascaleDbStorageVault" + "shortName": "DeleteCloudVmCluster" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.DeleteExascaleDbStorageVaultRequest" + "type": "google.cloud.oracledatabase_v1.types.DeleteCloudVmClusterRequest" }, { "name": "name", @@ -2272,13 +2320,13 @@ } ], "resultType": "google.api_core.operation_async.AsyncOperation", - "shortName": "delete_exascale_db_storage_vault" + "shortName": "delete_cloud_vm_cluster" }, - "description": "Sample for DeleteExascaleDbStorageVault", - "file": "oracledatabase_v1_generated_oracle_database_delete_exascale_db_storage_vault_async.py", + "description": "Sample for DeleteCloudVmCluster", + "file": "oracledatabase_v1_generated_oracle_database_delete_cloud_vm_cluster_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteExascaleDbStorageVault_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteCloudVmCluster_async", "segments": [ { "end": 55, @@ -2311,7 +2359,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_delete_exascale_db_storage_vault_async.py" + "title": "oracledatabase_v1_generated_oracle_database_delete_cloud_vm_cluster_async.py" }, { "canonical": true, @@ -2320,19 +2368,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_exascale_db_storage_vault", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_cloud_vm_cluster", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteExascaleDbStorageVault", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteCloudVmCluster", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "DeleteExascaleDbStorageVault" + "shortName": "DeleteCloudVmCluster" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.DeleteExascaleDbStorageVaultRequest" + "type": "google.cloud.oracledatabase_v1.types.DeleteCloudVmClusterRequest" }, { "name": "name", @@ -2352,13 +2400,13 @@ } ], "resultType": "google.api_core.operation.Operation", - "shortName": "delete_exascale_db_storage_vault" + "shortName": "delete_cloud_vm_cluster" }, - "description": "Sample for DeleteExascaleDbStorageVault", - "file": "oracledatabase_v1_generated_oracle_database_delete_exascale_db_storage_vault_sync.py", + "description": "Sample for DeleteCloudVmCluster", + "file": "oracledatabase_v1_generated_oracle_database_delete_cloud_vm_cluster_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteExascaleDbStorageVault_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteCloudVmCluster_sync", "segments": [ { "end": 55, @@ -2391,7 +2439,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_delete_exascale_db_storage_vault_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_delete_cloud_vm_cluster_sync.py" }, { "canonical": true, @@ -2401,19 +2449,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.delete_odb_network", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.delete_db_system", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteOdbNetwork", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteDbSystem", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "DeleteOdbNetwork" + "shortName": "DeleteDbSystem" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.DeleteOdbNetworkRequest" + "type": "google.cloud.oracledatabase_v1.types.DeleteDbSystemRequest" }, { "name": "name", @@ -2433,13 +2481,13 @@ } ], "resultType": "google.api_core.operation_async.AsyncOperation", - "shortName": "delete_odb_network" + "shortName": "delete_db_system" }, - "description": "Sample for DeleteOdbNetwork", - "file": "oracledatabase_v1_generated_oracle_database_delete_odb_network_async.py", + "description": "Sample for DeleteDbSystem", + "file": "oracledatabase_v1_generated_oracle_database_delete_db_system_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteOdbNetwork_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteDbSystem_async", "segments": [ { "end": 55, @@ -2472,7 +2520,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_delete_odb_network_async.py" + "title": "oracledatabase_v1_generated_oracle_database_delete_db_system_async.py" }, { "canonical": true, @@ -2481,19 +2529,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_odb_network", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_db_system", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteOdbNetwork", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteDbSystem", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "DeleteOdbNetwork" + "shortName": "DeleteDbSystem" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.DeleteOdbNetworkRequest" + "type": "google.cloud.oracledatabase_v1.types.DeleteDbSystemRequest" }, { "name": "name", @@ -2513,13 +2561,13 @@ } ], "resultType": "google.api_core.operation.Operation", - "shortName": "delete_odb_network" + "shortName": "delete_db_system" }, - "description": "Sample for DeleteOdbNetwork", - "file": "oracledatabase_v1_generated_oracle_database_delete_odb_network_sync.py", + "description": "Sample for DeleteDbSystem", + "file": "oracledatabase_v1_generated_oracle_database_delete_db_system_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteOdbNetwork_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteDbSystem_sync", "segments": [ { "end": 55, @@ -2552,7 +2600,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_delete_odb_network_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_delete_db_system_sync.py" }, { "canonical": true, @@ -2562,19 +2610,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.delete_odb_subnet", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.delete_exadb_vm_cluster", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteOdbSubnet", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteExadbVmCluster", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "DeleteOdbSubnet" + "shortName": "DeleteExadbVmCluster" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.DeleteOdbSubnetRequest" + "type": "google.cloud.oracledatabase_v1.types.DeleteExadbVmClusterRequest" }, { "name": "name", @@ -2594,13 +2642,13 @@ } ], "resultType": "google.api_core.operation_async.AsyncOperation", - "shortName": "delete_odb_subnet" + "shortName": "delete_exadb_vm_cluster" }, - "description": "Sample for DeleteOdbSubnet", - "file": "oracledatabase_v1_generated_oracle_database_delete_odb_subnet_async.py", + "description": "Sample for DeleteExadbVmCluster", + "file": "oracledatabase_v1_generated_oracle_database_delete_exadb_vm_cluster_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteOdbSubnet_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteExadbVmCluster_async", "segments": [ { "end": 55, @@ -2633,7 +2681,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_delete_odb_subnet_async.py" + "title": "oracledatabase_v1_generated_oracle_database_delete_exadb_vm_cluster_async.py" }, { "canonical": true, @@ -2642,19 +2690,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_odb_subnet", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_exadb_vm_cluster", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteOdbSubnet", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteExadbVmCluster", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "DeleteOdbSubnet" + "shortName": "DeleteExadbVmCluster" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.DeleteOdbSubnetRequest" + "type": "google.cloud.oracledatabase_v1.types.DeleteExadbVmClusterRequest" }, { "name": "name", @@ -2674,13 +2722,13 @@ } ], "resultType": "google.api_core.operation.Operation", - "shortName": "delete_odb_subnet" + "shortName": "delete_exadb_vm_cluster" }, - "description": "Sample for DeleteOdbSubnet", - "file": "oracledatabase_v1_generated_oracle_database_delete_odb_subnet_sync.py", + "description": "Sample for DeleteExadbVmCluster", + "file": "oracledatabase_v1_generated_oracle_database_delete_exadb_vm_cluster_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteOdbSubnet_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteExadbVmCluster_sync", "segments": [ { "end": 55, @@ -2713,7 +2761,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_delete_odb_subnet_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_delete_exadb_vm_cluster_sync.py" }, { "canonical": true, @@ -2723,28 +2771,24 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.failover_autonomous_database", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.delete_exascale_db_storage_vault", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.FailoverAutonomousDatabase", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteExascaleDbStorageVault", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "FailoverAutonomousDatabase" + "shortName": "DeleteExascaleDbStorageVault" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.FailoverAutonomousDatabaseRequest" + "type": "google.cloud.oracledatabase_v1.types.DeleteExascaleDbStorageVaultRequest" }, { "name": "name", "type": "str" }, - { - "name": "peer_autonomous_database", - "type": "str" - }, { "name": "retry", "type": "google.api_core.retry.Retry" @@ -2759,21 +2803,21 @@ } ], "resultType": "google.api_core.operation_async.AsyncOperation", - "shortName": "failover_autonomous_database" + "shortName": "delete_exascale_db_storage_vault" }, - "description": "Sample for FailoverAutonomousDatabase", - "file": "oracledatabase_v1_generated_oracle_database_failover_autonomous_database_async.py", + "description": "Sample for DeleteExascaleDbStorageVault", + "file": "oracledatabase_v1_generated_oracle_database_delete_exascale_db_storage_vault_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_FailoverAutonomousDatabase_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteExascaleDbStorageVault_async", "segments": [ { - "end": 56, + "end": 55, "start": 27, "type": "FULL" }, { - "end": 56, + "end": 55, "start": 27, "type": "SHORT" }, @@ -2783,22 +2827,22 @@ "type": "CLIENT_INITIALIZATION" }, { - "end": 46, + "end": 45, "start": 41, "type": "REQUEST_INITIALIZATION" }, { - "end": 53, - "start": 47, + "end": 52, + "start": 46, "type": "REQUEST_EXECUTION" }, { - "end": 57, - "start": 54, + "end": 56, + "start": 53, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_failover_autonomous_database_async.py" + "title": "oracledatabase_v1_generated_oracle_database_delete_exascale_db_storage_vault_async.py" }, { "canonical": true, @@ -2807,28 +2851,24 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.failover_autonomous_database", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_exascale_db_storage_vault", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.FailoverAutonomousDatabase", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteExascaleDbStorageVault", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "FailoverAutonomousDatabase" + "shortName": "DeleteExascaleDbStorageVault" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.FailoverAutonomousDatabaseRequest" + "type": "google.cloud.oracledatabase_v1.types.DeleteExascaleDbStorageVaultRequest" }, { "name": "name", "type": "str" }, - { - "name": "peer_autonomous_database", - "type": "str" - }, { "name": "retry", "type": "google.api_core.retry.Retry" @@ -2843,21 +2883,21 @@ } ], "resultType": "google.api_core.operation.Operation", - "shortName": "failover_autonomous_database" + "shortName": "delete_exascale_db_storage_vault" }, - "description": "Sample for FailoverAutonomousDatabase", - "file": "oracledatabase_v1_generated_oracle_database_failover_autonomous_database_sync.py", + "description": "Sample for DeleteExascaleDbStorageVault", + "file": "oracledatabase_v1_generated_oracle_database_delete_exascale_db_storage_vault_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_FailoverAutonomousDatabase_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteExascaleDbStorageVault_sync", "segments": [ { - "end": 56, + "end": 55, "start": 27, "type": "FULL" }, { - "end": 56, + "end": 55, "start": 27, "type": "SHORT" }, @@ -2867,22 +2907,22 @@ "type": "CLIENT_INITIALIZATION" }, { - "end": 46, + "end": 45, "start": 41, "type": "REQUEST_INITIALIZATION" }, { - "end": 53, - "start": 47, + "end": 52, + "start": 46, "type": "REQUEST_EXECUTION" }, { - "end": 57, - "start": 54, + "end": 56, + "start": 53, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_failover_autonomous_database_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_delete_exascale_db_storage_vault_sync.py" }, { "canonical": true, @@ -2892,36 +2932,24 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.generate_autonomous_database_wallet", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.delete_goldengate_connection_assignment", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GenerateAutonomousDatabaseWallet", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteGoldengateConnectionAssignment", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "GenerateAutonomousDatabaseWallet" + "shortName": "DeleteGoldengateConnectionAssignment" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.GenerateAutonomousDatabaseWalletRequest" + "type": "google.cloud.oracledatabase_v1.types.DeleteGoldengateConnectionAssignmentRequest" }, { "name": "name", "type": "str" }, - { - "name": "type_", - "type": "google.cloud.oracledatabase_v1.types.GenerateType" - }, - { - "name": "is_regional", - "type": "bool" - }, - { - "name": "password", - "type": "str" - }, { "name": "retry", "type": "google.api_core.retry.Retry" @@ -2935,22 +2963,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.types.GenerateAutonomousDatabaseWalletResponse", - "shortName": "generate_autonomous_database_wallet" + "resultType": "google.api_core.operation_async.AsyncOperation", + "shortName": "delete_goldengate_connection_assignment" }, - "description": "Sample for GenerateAutonomousDatabaseWallet", - "file": "oracledatabase_v1_generated_oracle_database_generate_autonomous_database_wallet_async.py", + "description": "Sample for DeleteGoldengateConnectionAssignment", + "file": "oracledatabase_v1_generated_oracle_database_delete_goldengate_connection_assignment_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_GenerateAutonomousDatabaseWallet_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteGoldengateConnectionAssignment_async", "segments": [ { - "end": 52, + "end": 55, "start": 27, "type": "FULL" }, { - "end": 52, + "end": 55, "start": 27, "type": "SHORT" }, @@ -2960,22 +2988,22 @@ "type": "CLIENT_INITIALIZATION" }, { - "end": 46, + "end": 45, "start": 41, "type": "REQUEST_INITIALIZATION" }, { - "end": 49, - "start": 47, + "end": 52, + "start": 46, "type": "REQUEST_EXECUTION" }, { - "end": 53, - "start": 50, + "end": 56, + "start": 53, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_generate_autonomous_database_wallet_async.py" + "title": "oracledatabase_v1_generated_oracle_database_delete_goldengate_connection_assignment_async.py" }, { "canonical": true, @@ -2984,36 +3012,24 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.generate_autonomous_database_wallet", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_goldengate_connection_assignment", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GenerateAutonomousDatabaseWallet", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteGoldengateConnectionAssignment", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "GenerateAutonomousDatabaseWallet" + "shortName": "DeleteGoldengateConnectionAssignment" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.GenerateAutonomousDatabaseWalletRequest" + "type": "google.cloud.oracledatabase_v1.types.DeleteGoldengateConnectionAssignmentRequest" }, { "name": "name", "type": "str" }, - { - "name": "type_", - "type": "google.cloud.oracledatabase_v1.types.GenerateType" - }, - { - "name": "is_regional", - "type": "bool" - }, - { - "name": "password", - "type": "str" - }, { "name": "retry", "type": "google.api_core.retry.Retry" @@ -3027,22 +3043,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.types.GenerateAutonomousDatabaseWalletResponse", - "shortName": "generate_autonomous_database_wallet" + "resultType": "google.api_core.operation.Operation", + "shortName": "delete_goldengate_connection_assignment" }, - "description": "Sample for GenerateAutonomousDatabaseWallet", - "file": "oracledatabase_v1_generated_oracle_database_generate_autonomous_database_wallet_sync.py", + "description": "Sample for DeleteGoldengateConnectionAssignment", + "file": "oracledatabase_v1_generated_oracle_database_delete_goldengate_connection_assignment_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_GenerateAutonomousDatabaseWallet_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteGoldengateConnectionAssignment_sync", "segments": [ { - "end": 52, + "end": 55, "start": 27, "type": "FULL" }, { - "end": 52, + "end": 55, "start": 27, "type": "SHORT" }, @@ -3052,22 +3068,22 @@ "type": "CLIENT_INITIALIZATION" }, { - "end": 46, + "end": 45, "start": 41, "type": "REQUEST_INITIALIZATION" }, { - "end": 49, - "start": 47, + "end": 52, + "start": 46, "type": "REQUEST_EXECUTION" }, { - "end": 53, - "start": 50, + "end": 56, + "start": 53, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_generate_autonomous_database_wallet_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_delete_goldengate_connection_assignment_sync.py" }, { "canonical": true, @@ -3077,19 +3093,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.get_autonomous_database", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.delete_goldengate_connection", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetAutonomousDatabase", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteGoldengateConnection", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "GetAutonomousDatabase" + "shortName": "DeleteGoldengateConnection" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.GetAutonomousDatabaseRequest" + "type": "google.cloud.oracledatabase_v1.types.DeleteGoldengateConnectionRequest" }, { "name": "name", @@ -3108,22 +3124,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.types.AutonomousDatabase", - "shortName": "get_autonomous_database" + "resultType": "google.api_core.operation_async.AsyncOperation", + "shortName": "delete_goldengate_connection" }, - "description": "Sample for GetAutonomousDatabase", - "file": "oracledatabase_v1_generated_oracle_database_get_autonomous_database_async.py", + "description": "Sample for DeleteGoldengateConnection", + "file": "oracledatabase_v1_generated_oracle_database_delete_goldengate_connection_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetAutonomousDatabase_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteGoldengateConnection_async", "segments": [ { - "end": 51, + "end": 55, "start": 27, "type": "FULL" }, { - "end": 51, + "end": 55, "start": 27, "type": "SHORT" }, @@ -3138,17 +3154,17 @@ "type": "REQUEST_INITIALIZATION" }, { - "end": 48, + "end": 52, "start": 46, "type": "REQUEST_EXECUTION" }, { - "end": 52, - "start": 49, + "end": 56, + "start": 53, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_get_autonomous_database_async.py" + "title": "oracledatabase_v1_generated_oracle_database_delete_goldengate_connection_async.py" }, { "canonical": true, @@ -3157,19 +3173,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.get_autonomous_database", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_goldengate_connection", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetAutonomousDatabase", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteGoldengateConnection", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "GetAutonomousDatabase" + "shortName": "DeleteGoldengateConnection" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.GetAutonomousDatabaseRequest" + "type": "google.cloud.oracledatabase_v1.types.DeleteGoldengateConnectionRequest" }, { "name": "name", @@ -3188,22 +3204,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.types.AutonomousDatabase", - "shortName": "get_autonomous_database" + "resultType": "google.api_core.operation.Operation", + "shortName": "delete_goldengate_connection" }, - "description": "Sample for GetAutonomousDatabase", - "file": "oracledatabase_v1_generated_oracle_database_get_autonomous_database_sync.py", + "description": "Sample for DeleteGoldengateConnection", + "file": "oracledatabase_v1_generated_oracle_database_delete_goldengate_connection_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetAutonomousDatabase_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteGoldengateConnection_sync", "segments": [ { - "end": 51, + "end": 55, "start": 27, "type": "FULL" }, { - "end": 51, + "end": 55, "start": 27, "type": "SHORT" }, @@ -3218,17 +3234,17 @@ "type": "REQUEST_INITIALIZATION" }, { - "end": 48, + "end": 52, "start": 46, "type": "REQUEST_EXECUTION" }, { - "end": 52, - "start": 49, + "end": 56, + "start": 53, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_get_autonomous_database_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_delete_goldengate_connection_sync.py" }, { "canonical": true, @@ -3238,19 +3254,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.get_cloud_exadata_infrastructure", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.delete_goldengate_deployment", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetCloudExadataInfrastructure", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteGoldengateDeployment", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "GetCloudExadataInfrastructure" + "shortName": "DeleteGoldengateDeployment" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.GetCloudExadataInfrastructureRequest" + "type": "google.cloud.oracledatabase_v1.types.DeleteGoldengateDeploymentRequest" }, { "name": "name", @@ -3269,22 +3285,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.types.CloudExadataInfrastructure", - "shortName": "get_cloud_exadata_infrastructure" + "resultType": "google.api_core.operation_async.AsyncOperation", + "shortName": "delete_goldengate_deployment" }, - "description": "Sample for GetCloudExadataInfrastructure", - "file": "oracledatabase_v1_generated_oracle_database_get_cloud_exadata_infrastructure_async.py", + "description": "Sample for DeleteGoldengateDeployment", + "file": "oracledatabase_v1_generated_oracle_database_delete_goldengate_deployment_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetCloudExadataInfrastructure_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteGoldengateDeployment_async", "segments": [ { - "end": 51, + "end": 55, "start": 27, "type": "FULL" }, { - "end": 51, + "end": 55, "start": 27, "type": "SHORT" }, @@ -3299,17 +3315,17 @@ "type": "REQUEST_INITIALIZATION" }, { - "end": 48, + "end": 52, "start": 46, "type": "REQUEST_EXECUTION" }, { - "end": 52, - "start": 49, + "end": 56, + "start": 53, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_get_cloud_exadata_infrastructure_async.py" + "title": "oracledatabase_v1_generated_oracle_database_delete_goldengate_deployment_async.py" }, { "canonical": true, @@ -3318,19 +3334,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.get_cloud_exadata_infrastructure", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_goldengate_deployment", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetCloudExadataInfrastructure", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteGoldengateDeployment", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "GetCloudExadataInfrastructure" + "shortName": "DeleteGoldengateDeployment" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.GetCloudExadataInfrastructureRequest" + "type": "google.cloud.oracledatabase_v1.types.DeleteGoldengateDeploymentRequest" }, { "name": "name", @@ -3349,22 +3365,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.types.CloudExadataInfrastructure", - "shortName": "get_cloud_exadata_infrastructure" + "resultType": "google.api_core.operation.Operation", + "shortName": "delete_goldengate_deployment" }, - "description": "Sample for GetCloudExadataInfrastructure", - "file": "oracledatabase_v1_generated_oracle_database_get_cloud_exadata_infrastructure_sync.py", + "description": "Sample for DeleteGoldengateDeployment", + "file": "oracledatabase_v1_generated_oracle_database_delete_goldengate_deployment_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetCloudExadataInfrastructure_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteGoldengateDeployment_sync", "segments": [ { - "end": 51, + "end": 55, "start": 27, "type": "FULL" }, { - "end": 51, + "end": 55, "start": 27, "type": "SHORT" }, @@ -3379,17 +3395,17 @@ "type": "REQUEST_INITIALIZATION" }, { - "end": 48, + "end": 52, "start": 46, "type": "REQUEST_EXECUTION" }, { - "end": 52, - "start": 49, + "end": 56, + "start": 53, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_get_cloud_exadata_infrastructure_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_delete_goldengate_deployment_sync.py" }, { "canonical": true, @@ -3399,19 +3415,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.get_cloud_vm_cluster", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.delete_odb_network", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetCloudVmCluster", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteOdbNetwork", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "GetCloudVmCluster" + "shortName": "DeleteOdbNetwork" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.GetCloudVmClusterRequest" + "type": "google.cloud.oracledatabase_v1.types.DeleteOdbNetworkRequest" }, { "name": "name", @@ -3430,22 +3446,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.types.CloudVmCluster", - "shortName": "get_cloud_vm_cluster" + "resultType": "google.api_core.operation_async.AsyncOperation", + "shortName": "delete_odb_network" }, - "description": "Sample for GetCloudVmCluster", - "file": "oracledatabase_v1_generated_oracle_database_get_cloud_vm_cluster_async.py", + "description": "Sample for DeleteOdbNetwork", + "file": "oracledatabase_v1_generated_oracle_database_delete_odb_network_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetCloudVmCluster_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteOdbNetwork_async", "segments": [ { - "end": 51, + "end": 55, "start": 27, "type": "FULL" }, { - "end": 51, + "end": 55, "start": 27, "type": "SHORT" }, @@ -3460,17 +3476,17 @@ "type": "REQUEST_INITIALIZATION" }, { - "end": 48, + "end": 52, "start": 46, "type": "REQUEST_EXECUTION" }, { - "end": 52, - "start": 49, + "end": 56, + "start": 53, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_get_cloud_vm_cluster_async.py" + "title": "oracledatabase_v1_generated_oracle_database_delete_odb_network_async.py" }, { "canonical": true, @@ -3479,19 +3495,1017 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.get_cloud_vm_cluster", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_odb_network", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetCloudVmCluster", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteOdbNetwork", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "GetCloudVmCluster" + "shortName": "DeleteOdbNetwork" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.GetCloudVmClusterRequest" + "type": "google.cloud.oracledatabase_v1.types.DeleteOdbNetworkRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.api_core.operation.Operation", + "shortName": "delete_odb_network" + }, + "description": "Sample for DeleteOdbNetwork", + "file": "oracledatabase_v1_generated_oracle_database_delete_odb_network_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteOdbNetwork_sync", + "segments": [ + { + "end": 55, + "start": 27, + "type": "FULL" + }, + { + "end": 55, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 52, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 56, + "start": 53, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_delete_odb_network_sync.py" + }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", + "shortName": "OracleDatabaseAsyncClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.delete_odb_subnet", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteOdbSubnet", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "DeleteOdbSubnet" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.DeleteOdbSubnetRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.api_core.operation_async.AsyncOperation", + "shortName": "delete_odb_subnet" + }, + "description": "Sample for DeleteOdbSubnet", + "file": "oracledatabase_v1_generated_oracle_database_delete_odb_subnet_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteOdbSubnet_async", + "segments": [ + { + "end": 55, + "start": 27, + "type": "FULL" + }, + { + "end": 55, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 52, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 56, + "start": 53, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_delete_odb_subnet_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", + "shortName": "OracleDatabaseClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.delete_odb_subnet", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.DeleteOdbSubnet", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "DeleteOdbSubnet" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.DeleteOdbSubnetRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.api_core.operation.Operation", + "shortName": "delete_odb_subnet" + }, + "description": "Sample for DeleteOdbSubnet", + "file": "oracledatabase_v1_generated_oracle_database_delete_odb_subnet_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_DeleteOdbSubnet_sync", + "segments": [ + { + "end": 55, + "start": 27, + "type": "FULL" + }, + { + "end": 55, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 52, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 56, + "start": 53, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_delete_odb_subnet_sync.py" + }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", + "shortName": "OracleDatabaseAsyncClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.failover_autonomous_database", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.FailoverAutonomousDatabase", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "FailoverAutonomousDatabase" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.FailoverAutonomousDatabaseRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "peer_autonomous_database", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.api_core.operation_async.AsyncOperation", + "shortName": "failover_autonomous_database" + }, + "description": "Sample for FailoverAutonomousDatabase", + "file": "oracledatabase_v1_generated_oracle_database_failover_autonomous_database_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_FailoverAutonomousDatabase_async", + "segments": [ + { + "end": 55, + "start": 27, + "type": "FULL" + }, + { + "end": 55, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 52, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 56, + "start": 53, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_failover_autonomous_database_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", + "shortName": "OracleDatabaseClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.failover_autonomous_database", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.FailoverAutonomousDatabase", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "FailoverAutonomousDatabase" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.FailoverAutonomousDatabaseRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "peer_autonomous_database", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.api_core.operation.Operation", + "shortName": "failover_autonomous_database" + }, + "description": "Sample for FailoverAutonomousDatabase", + "file": "oracledatabase_v1_generated_oracle_database_failover_autonomous_database_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_FailoverAutonomousDatabase_sync", + "segments": [ + { + "end": 55, + "start": 27, + "type": "FULL" + }, + { + "end": 55, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 52, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 56, + "start": 53, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_failover_autonomous_database_sync.py" + }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", + "shortName": "OracleDatabaseAsyncClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.generate_autonomous_database_wallet", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GenerateAutonomousDatabaseWallet", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GenerateAutonomousDatabaseWallet" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GenerateAutonomousDatabaseWalletRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "type_", + "type": "google.cloud.oracledatabase_v1.types.GenerateType" + }, + { + "name": "is_regional", + "type": "bool" + }, + { + "name": "password", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.GenerateAutonomousDatabaseWalletResponse", + "shortName": "generate_autonomous_database_wallet" + }, + "description": "Sample for GenerateAutonomousDatabaseWallet", + "file": "oracledatabase_v1_generated_oracle_database_generate_autonomous_database_wallet_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GenerateAutonomousDatabaseWallet_async", + "segments": [ + { + "end": 52, + "start": 27, + "type": "FULL" + }, + { + "end": 52, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 46, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 49, + "start": 47, + "type": "REQUEST_EXECUTION" + }, + { + "end": 53, + "start": 50, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_generate_autonomous_database_wallet_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", + "shortName": "OracleDatabaseClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.generate_autonomous_database_wallet", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GenerateAutonomousDatabaseWallet", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GenerateAutonomousDatabaseWallet" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GenerateAutonomousDatabaseWalletRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "type_", + "type": "google.cloud.oracledatabase_v1.types.GenerateType" + }, + { + "name": "is_regional", + "type": "bool" + }, + { + "name": "password", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.GenerateAutonomousDatabaseWalletResponse", + "shortName": "generate_autonomous_database_wallet" + }, + "description": "Sample for GenerateAutonomousDatabaseWallet", + "file": "oracledatabase_v1_generated_oracle_database_generate_autonomous_database_wallet_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GenerateAutonomousDatabaseWallet_sync", + "segments": [ + { + "end": 52, + "start": 27, + "type": "FULL" + }, + { + "end": 52, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 46, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 49, + "start": 47, + "type": "REQUEST_EXECUTION" + }, + { + "end": 53, + "start": 50, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_generate_autonomous_database_wallet_sync.py" + }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", + "shortName": "OracleDatabaseAsyncClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.get_autonomous_database", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetAutonomousDatabase", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetAutonomousDatabase" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetAutonomousDatabaseRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.AutonomousDatabase", + "shortName": "get_autonomous_database" + }, + "description": "Sample for GetAutonomousDatabase", + "file": "oracledatabase_v1_generated_oracle_database_get_autonomous_database_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetAutonomousDatabase_async", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_autonomous_database_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", + "shortName": "OracleDatabaseClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.get_autonomous_database", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetAutonomousDatabase", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetAutonomousDatabase" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetAutonomousDatabaseRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.AutonomousDatabase", + "shortName": "get_autonomous_database" + }, + "description": "Sample for GetAutonomousDatabase", + "file": "oracledatabase_v1_generated_oracle_database_get_autonomous_database_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetAutonomousDatabase_sync", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_autonomous_database_sync.py" + }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", + "shortName": "OracleDatabaseAsyncClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.get_cloud_exadata_infrastructure", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetCloudExadataInfrastructure", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetCloudExadataInfrastructure" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetCloudExadataInfrastructureRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.CloudExadataInfrastructure", + "shortName": "get_cloud_exadata_infrastructure" + }, + "description": "Sample for GetCloudExadataInfrastructure", + "file": "oracledatabase_v1_generated_oracle_database_get_cloud_exadata_infrastructure_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetCloudExadataInfrastructure_async", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_cloud_exadata_infrastructure_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", + "shortName": "OracleDatabaseClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.get_cloud_exadata_infrastructure", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetCloudExadataInfrastructure", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetCloudExadataInfrastructure" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetCloudExadataInfrastructureRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.CloudExadataInfrastructure", + "shortName": "get_cloud_exadata_infrastructure" + }, + "description": "Sample for GetCloudExadataInfrastructure", + "file": "oracledatabase_v1_generated_oracle_database_get_cloud_exadata_infrastructure_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetCloudExadataInfrastructure_sync", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_cloud_exadata_infrastructure_sync.py" + }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", + "shortName": "OracleDatabaseAsyncClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.get_cloud_vm_cluster", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetCloudVmCluster", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetCloudVmCluster" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetCloudVmClusterRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.CloudVmCluster", + "shortName": "get_cloud_vm_cluster" + }, + "description": "Sample for GetCloudVmCluster", + "file": "oracledatabase_v1_generated_oracle_database_get_cloud_vm_cluster_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetCloudVmCluster_async", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_cloud_vm_cluster_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", + "shortName": "OracleDatabaseClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.get_cloud_vm_cluster", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetCloudVmCluster", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetCloudVmCluster" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetCloudVmClusterRequest" }, { "name": "name", @@ -3513,19 +4527,2756 @@ "resultType": "google.cloud.oracledatabase_v1.types.CloudVmCluster", "shortName": "get_cloud_vm_cluster" }, - "description": "Sample for GetCloudVmCluster", - "file": "oracledatabase_v1_generated_oracle_database_get_cloud_vm_cluster_sync.py", + "description": "Sample for GetCloudVmCluster", + "file": "oracledatabase_v1_generated_oracle_database_get_cloud_vm_cluster_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetCloudVmCluster_sync", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_cloud_vm_cluster_sync.py" + }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", + "shortName": "OracleDatabaseAsyncClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.get_database", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetDatabase", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetDatabase" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetDatabaseRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.Database", + "shortName": "get_database" + }, + "description": "Sample for GetDatabase", + "file": "oracledatabase_v1_generated_oracle_database_get_database_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetDatabase_async", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_database_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", + "shortName": "OracleDatabaseClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.get_database", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetDatabase", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetDatabase" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetDatabaseRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.Database", + "shortName": "get_database" + }, + "description": "Sample for GetDatabase", + "file": "oracledatabase_v1_generated_oracle_database_get_database_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetDatabase_sync", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_database_sync.py" + }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", + "shortName": "OracleDatabaseAsyncClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.get_db_system", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetDbSystem", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetDbSystem" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetDbSystemRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.DbSystem", + "shortName": "get_db_system" + }, + "description": "Sample for GetDbSystem", + "file": "oracledatabase_v1_generated_oracle_database_get_db_system_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetDbSystem_async", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_db_system_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", + "shortName": "OracleDatabaseClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.get_db_system", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetDbSystem", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetDbSystem" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetDbSystemRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.DbSystem", + "shortName": "get_db_system" + }, + "description": "Sample for GetDbSystem", + "file": "oracledatabase_v1_generated_oracle_database_get_db_system_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetDbSystem_sync", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_db_system_sync.py" + }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", + "shortName": "OracleDatabaseAsyncClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.get_exadb_vm_cluster", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetExadbVmCluster", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetExadbVmCluster" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetExadbVmClusterRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.ExadbVmCluster", + "shortName": "get_exadb_vm_cluster" + }, + "description": "Sample for GetExadbVmCluster", + "file": "oracledatabase_v1_generated_oracle_database_get_exadb_vm_cluster_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetExadbVmCluster_async", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_exadb_vm_cluster_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", + "shortName": "OracleDatabaseClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.get_exadb_vm_cluster", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetExadbVmCluster", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetExadbVmCluster" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetExadbVmClusterRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.ExadbVmCluster", + "shortName": "get_exadb_vm_cluster" + }, + "description": "Sample for GetExadbVmCluster", + "file": "oracledatabase_v1_generated_oracle_database_get_exadb_vm_cluster_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetExadbVmCluster_sync", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_exadb_vm_cluster_sync.py" + }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", + "shortName": "OracleDatabaseAsyncClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.get_exascale_db_storage_vault", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetExascaleDbStorageVault", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetExascaleDbStorageVault" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetExascaleDbStorageVaultRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.ExascaleDbStorageVault", + "shortName": "get_exascale_db_storage_vault" + }, + "description": "Sample for GetExascaleDbStorageVault", + "file": "oracledatabase_v1_generated_oracle_database_get_exascale_db_storage_vault_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetExascaleDbStorageVault_async", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_exascale_db_storage_vault_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", + "shortName": "OracleDatabaseClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.get_exascale_db_storage_vault", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetExascaleDbStorageVault", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetExascaleDbStorageVault" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetExascaleDbStorageVaultRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.ExascaleDbStorageVault", + "shortName": "get_exascale_db_storage_vault" + }, + "description": "Sample for GetExascaleDbStorageVault", + "file": "oracledatabase_v1_generated_oracle_database_get_exascale_db_storage_vault_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetExascaleDbStorageVault_sync", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_exascale_db_storage_vault_sync.py" + }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", + "shortName": "OracleDatabaseAsyncClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.get_goldengate_connection_assignment", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetGoldengateConnectionAssignment", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetGoldengateConnectionAssignment" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetGoldengateConnectionAssignmentRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.GoldengateConnectionAssignment", + "shortName": "get_goldengate_connection_assignment" + }, + "description": "Sample for GetGoldengateConnectionAssignment", + "file": "oracledatabase_v1_generated_oracle_database_get_goldengate_connection_assignment_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetGoldengateConnectionAssignment_async", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_goldengate_connection_assignment_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", + "shortName": "OracleDatabaseClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.get_goldengate_connection_assignment", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetGoldengateConnectionAssignment", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetGoldengateConnectionAssignment" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetGoldengateConnectionAssignmentRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.GoldengateConnectionAssignment", + "shortName": "get_goldengate_connection_assignment" + }, + "description": "Sample for GetGoldengateConnectionAssignment", + "file": "oracledatabase_v1_generated_oracle_database_get_goldengate_connection_assignment_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetGoldengateConnectionAssignment_sync", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_goldengate_connection_assignment_sync.py" + }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", + "shortName": "OracleDatabaseAsyncClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.get_goldengate_connection_type", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetGoldengateConnectionType", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetGoldengateConnectionType" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetGoldengateConnectionTypeRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.GoldengateConnectionType", + "shortName": "get_goldengate_connection_type" + }, + "description": "Sample for GetGoldengateConnectionType", + "file": "oracledatabase_v1_generated_oracle_database_get_goldengate_connection_type_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetGoldengateConnectionType_async", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_goldengate_connection_type_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", + "shortName": "OracleDatabaseClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.get_goldengate_connection_type", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetGoldengateConnectionType", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetGoldengateConnectionType" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetGoldengateConnectionTypeRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.GoldengateConnectionType", + "shortName": "get_goldengate_connection_type" + }, + "description": "Sample for GetGoldengateConnectionType", + "file": "oracledatabase_v1_generated_oracle_database_get_goldengate_connection_type_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetGoldengateConnectionType_sync", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_goldengate_connection_type_sync.py" + }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", + "shortName": "OracleDatabaseAsyncClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.get_goldengate_connection", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetGoldengateConnection", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetGoldengateConnection" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetGoldengateConnectionRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.GoldengateConnection", + "shortName": "get_goldengate_connection" + }, + "description": "Sample for GetGoldengateConnection", + "file": "oracledatabase_v1_generated_oracle_database_get_goldengate_connection_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetGoldengateConnection_async", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_goldengate_connection_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", + "shortName": "OracleDatabaseClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.get_goldengate_connection", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetGoldengateConnection", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetGoldengateConnection" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetGoldengateConnectionRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.GoldengateConnection", + "shortName": "get_goldengate_connection" + }, + "description": "Sample for GetGoldengateConnection", + "file": "oracledatabase_v1_generated_oracle_database_get_goldengate_connection_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetGoldengateConnection_sync", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_goldengate_connection_sync.py" + }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", + "shortName": "OracleDatabaseAsyncClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.get_goldengate_deployment_environment", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetGoldengateDeploymentEnvironment", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetGoldengateDeploymentEnvironment" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetGoldengateDeploymentEnvironmentRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.GoldengateDeploymentEnvironment", + "shortName": "get_goldengate_deployment_environment" + }, + "description": "Sample for GetGoldengateDeploymentEnvironment", + "file": "oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_environment_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetGoldengateDeploymentEnvironment_async", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_environment_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", + "shortName": "OracleDatabaseClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.get_goldengate_deployment_environment", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetGoldengateDeploymentEnvironment", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetGoldengateDeploymentEnvironment" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetGoldengateDeploymentEnvironmentRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.GoldengateDeploymentEnvironment", + "shortName": "get_goldengate_deployment_environment" + }, + "description": "Sample for GetGoldengateDeploymentEnvironment", + "file": "oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_environment_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetGoldengateDeploymentEnvironment_sync", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_environment_sync.py" + }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", + "shortName": "OracleDatabaseAsyncClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.get_goldengate_deployment_type", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetGoldengateDeploymentType", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetGoldengateDeploymentType" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetGoldengateDeploymentTypeRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.GoldengateDeploymentType", + "shortName": "get_goldengate_deployment_type" + }, + "description": "Sample for GetGoldengateDeploymentType", + "file": "oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_type_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetGoldengateDeploymentType_async", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_type_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", + "shortName": "OracleDatabaseClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.get_goldengate_deployment_type", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetGoldengateDeploymentType", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetGoldengateDeploymentType" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetGoldengateDeploymentTypeRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.GoldengateDeploymentType", + "shortName": "get_goldengate_deployment_type" + }, + "description": "Sample for GetGoldengateDeploymentType", + "file": "oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_type_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetGoldengateDeploymentType_sync", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_type_sync.py" + }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", + "shortName": "OracleDatabaseAsyncClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.get_goldengate_deployment_version", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetGoldengateDeploymentVersion", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetGoldengateDeploymentVersion" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetGoldengateDeploymentVersionRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.GoldengateDeploymentVersion", + "shortName": "get_goldengate_deployment_version" + }, + "description": "Sample for GetGoldengateDeploymentVersion", + "file": "oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_version_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetGoldengateDeploymentVersion_async", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_version_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", + "shortName": "OracleDatabaseClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.get_goldengate_deployment_version", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetGoldengateDeploymentVersion", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetGoldengateDeploymentVersion" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetGoldengateDeploymentVersionRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.GoldengateDeploymentVersion", + "shortName": "get_goldengate_deployment_version" + }, + "description": "Sample for GetGoldengateDeploymentVersion", + "file": "oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_version_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetGoldengateDeploymentVersion_sync", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_version_sync.py" + }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", + "shortName": "OracleDatabaseAsyncClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.get_goldengate_deployment", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetGoldengateDeployment", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetGoldengateDeployment" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetGoldengateDeploymentRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.GoldengateDeployment", + "shortName": "get_goldengate_deployment" + }, + "description": "Sample for GetGoldengateDeployment", + "file": "oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetGoldengateDeployment_async", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", + "shortName": "OracleDatabaseClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.get_goldengate_deployment", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetGoldengateDeployment", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetGoldengateDeployment" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetGoldengateDeploymentRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.GoldengateDeployment", + "shortName": "get_goldengate_deployment" + }, + "description": "Sample for GetGoldengateDeployment", + "file": "oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetGoldengateDeployment_sync", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_goldengate_deployment_sync.py" + }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", + "shortName": "OracleDatabaseAsyncClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.get_odb_network", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetOdbNetwork", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetOdbNetwork" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetOdbNetworkRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.OdbNetwork", + "shortName": "get_odb_network" + }, + "description": "Sample for GetOdbNetwork", + "file": "oracledatabase_v1_generated_oracle_database_get_odb_network_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetOdbNetwork_async", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_odb_network_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", + "shortName": "OracleDatabaseClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.get_odb_network", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetOdbNetwork", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetOdbNetwork" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetOdbNetworkRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.OdbNetwork", + "shortName": "get_odb_network" + }, + "description": "Sample for GetOdbNetwork", + "file": "oracledatabase_v1_generated_oracle_database_get_odb_network_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetOdbNetwork_sync", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_odb_network_sync.py" + }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", + "shortName": "OracleDatabaseAsyncClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.get_odb_subnet", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetOdbSubnet", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetOdbSubnet" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetOdbSubnetRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.OdbSubnet", + "shortName": "get_odb_subnet" + }, + "description": "Sample for GetOdbSubnet", + "file": "oracledatabase_v1_generated_oracle_database_get_odb_subnet_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetOdbSubnet_async", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_odb_subnet_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", + "shortName": "OracleDatabaseClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.get_odb_subnet", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetOdbSubnet", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetOdbSubnet" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetOdbSubnetRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.OdbSubnet", + "shortName": "get_odb_subnet" + }, + "description": "Sample for GetOdbSubnet", + "file": "oracledatabase_v1_generated_oracle_database_get_odb_subnet_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetOdbSubnet_sync", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_odb_subnet_sync.py" + }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", + "shortName": "OracleDatabaseAsyncClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.get_pluggable_database", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetPluggableDatabase", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetPluggableDatabase" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetPluggableDatabaseRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.PluggableDatabase", + "shortName": "get_pluggable_database" + }, + "description": "Sample for GetPluggableDatabase", + "file": "oracledatabase_v1_generated_oracle_database_get_pluggable_database_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetPluggableDatabase_async", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_pluggable_database_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", + "shortName": "OracleDatabaseClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.get_pluggable_database", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetPluggableDatabase", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "GetPluggableDatabase" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.GetPluggableDatabaseRequest" + }, + { + "name": "name", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.types.PluggableDatabase", + "shortName": "get_pluggable_database" + }, + "description": "Sample for GetPluggableDatabase", + "file": "oracledatabase_v1_generated_oracle_database_get_pluggable_database_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetPluggableDatabase_sync", + "segments": [ + { + "end": 51, + "start": 27, + "type": "FULL" + }, + { + "end": 51, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 52, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_get_pluggable_database_sync.py" + }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", + "shortName": "OracleDatabaseAsyncClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_autonomous_database_backups", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListAutonomousDatabaseBackups", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "ListAutonomousDatabaseBackups" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.ListAutonomousDatabaseBackupsRequest" + }, + { + "name": "parent", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListAutonomousDatabaseBackupsAsyncPager", + "shortName": "list_autonomous_database_backups" + }, + "description": "Sample for ListAutonomousDatabaseBackups", + "file": "oracledatabase_v1_generated_oracle_database_list_autonomous_database_backups_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListAutonomousDatabaseBackups_async", + "segments": [ + { + "end": 52, + "start": 27, + "type": "FULL" + }, + { + "end": 52, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 53, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_list_autonomous_database_backups_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", + "shortName": "OracleDatabaseClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_autonomous_database_backups", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListAutonomousDatabaseBackups", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "ListAutonomousDatabaseBackups" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.ListAutonomousDatabaseBackupsRequest" + }, + { + "name": "parent", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListAutonomousDatabaseBackupsPager", + "shortName": "list_autonomous_database_backups" + }, + "description": "Sample for ListAutonomousDatabaseBackups", + "file": "oracledatabase_v1_generated_oracle_database_list_autonomous_database_backups_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListAutonomousDatabaseBackups_sync", + "segments": [ + { + "end": 52, + "start": 27, + "type": "FULL" + }, + { + "end": 52, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 53, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_list_autonomous_database_backups_sync.py" + }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", + "shortName": "OracleDatabaseAsyncClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_autonomous_database_character_sets", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListAutonomousDatabaseCharacterSets", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "ListAutonomousDatabaseCharacterSets" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.ListAutonomousDatabaseCharacterSetsRequest" + }, + { + "name": "parent", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListAutonomousDatabaseCharacterSetsAsyncPager", + "shortName": "list_autonomous_database_character_sets" + }, + "description": "Sample for ListAutonomousDatabaseCharacterSets", + "file": "oracledatabase_v1_generated_oracle_database_list_autonomous_database_character_sets_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListAutonomousDatabaseCharacterSets_async", + "segments": [ + { + "end": 52, + "start": 27, + "type": "FULL" + }, + { + "end": 52, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 53, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_list_autonomous_database_character_sets_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", + "shortName": "OracleDatabaseClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_autonomous_database_character_sets", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListAutonomousDatabaseCharacterSets", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "ListAutonomousDatabaseCharacterSets" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.ListAutonomousDatabaseCharacterSetsRequest" + }, + { + "name": "parent", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListAutonomousDatabaseCharacterSetsPager", + "shortName": "list_autonomous_database_character_sets" + }, + "description": "Sample for ListAutonomousDatabaseCharacterSets", + "file": "oracledatabase_v1_generated_oracle_database_list_autonomous_database_character_sets_sync.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListAutonomousDatabaseCharacterSets_sync", + "segments": [ + { + "end": 52, + "start": 27, + "type": "FULL" + }, + { + "end": 52, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 53, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_list_autonomous_database_character_sets_sync.py" + }, + { + "canonical": true, + "clientMethod": { + "async": true, + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", + "shortName": "OracleDatabaseAsyncClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_autonomous_databases", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListAutonomousDatabases", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "ListAutonomousDatabases" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.ListAutonomousDatabasesRequest" + }, + { + "name": "parent", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListAutonomousDatabasesAsyncPager", + "shortName": "list_autonomous_databases" + }, + "description": "Sample for ListAutonomousDatabases", + "file": "oracledatabase_v1_generated_oracle_database_list_autonomous_databases_async.py", + "language": "PYTHON", + "origin": "API_DEFINITION", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListAutonomousDatabases_async", + "segments": [ + { + "end": 52, + "start": 27, + "type": "FULL" + }, + { + "end": 52, + "start": 27, + "type": "SHORT" + }, + { + "end": 40, + "start": 38, + "type": "CLIENT_INITIALIZATION" + }, + { + "end": 45, + "start": 41, + "type": "REQUEST_INITIALIZATION" + }, + { + "end": 48, + "start": 46, + "type": "REQUEST_EXECUTION" + }, + { + "end": 53, + "start": 49, + "type": "RESPONSE_HANDLING" + } + ], + "title": "oracledatabase_v1_generated_oracle_database_list_autonomous_databases_async.py" + }, + { + "canonical": true, + "clientMethod": { + "client": { + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", + "shortName": "OracleDatabaseClient" + }, + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_autonomous_databases", + "method": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListAutonomousDatabases", + "service": { + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", + "shortName": "OracleDatabase" + }, + "shortName": "ListAutonomousDatabases" + }, + "parameters": [ + { + "name": "request", + "type": "google.cloud.oracledatabase_v1.types.ListAutonomousDatabasesRequest" + }, + { + "name": "parent", + "type": "str" + }, + { + "name": "retry", + "type": "google.api_core.retry.Retry" + }, + { + "name": "timeout", + "type": "float" + }, + { + "name": "metadata", + "type": "Sequence[Tuple[str, Union[str, bytes]]]" + } + ], + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListAutonomousDatabasesPager", + "shortName": "list_autonomous_databases" + }, + "description": "Sample for ListAutonomousDatabases", + "file": "oracledatabase_v1_generated_oracle_database_list_autonomous_databases_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetCloudVmCluster_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListAutonomousDatabases_sync", "segments": [ { - "end": 51, + "end": 52, "start": 27, "type": "FULL" }, { - "end": 51, + "end": 52, "start": 27, "type": "SHORT" }, @@ -3545,12 +7296,12 @@ "type": "REQUEST_EXECUTION" }, { - "end": 52, + "end": 53, "start": 49, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_get_cloud_vm_cluster_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_list_autonomous_databases_sync.py" }, { "canonical": true, @@ -3560,22 +7311,22 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.get_database", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_autonomous_db_versions", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetDatabase", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListAutonomousDbVersions", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "GetDatabase" + "shortName": "ListAutonomousDbVersions" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.GetDatabaseRequest" + "type": "google.cloud.oracledatabase_v1.types.ListAutonomousDbVersionsRequest" }, { - "name": "name", + "name": "parent", "type": "str" }, { @@ -3591,22 +7342,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.types.Database", - "shortName": "get_database" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListAutonomousDbVersionsAsyncPager", + "shortName": "list_autonomous_db_versions" }, - "description": "Sample for GetDatabase", - "file": "oracledatabase_v1_generated_oracle_database_get_database_async.py", + "description": "Sample for ListAutonomousDbVersions", + "file": "oracledatabase_v1_generated_oracle_database_list_autonomous_db_versions_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetDatabase_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListAutonomousDbVersions_async", "segments": [ { - "end": 51, + "end": 52, "start": 27, "type": "FULL" }, { - "end": 51, + "end": 52, "start": 27, "type": "SHORT" }, @@ -3626,12 +7377,12 @@ "type": "REQUEST_EXECUTION" }, { - "end": 52, + "end": 53, "start": 49, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_get_database_async.py" + "title": "oracledatabase_v1_generated_oracle_database_list_autonomous_db_versions_async.py" }, { "canonical": true, @@ -3640,22 +7391,22 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.get_database", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_autonomous_db_versions", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetDatabase", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListAutonomousDbVersions", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "GetDatabase" + "shortName": "ListAutonomousDbVersions" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.GetDatabaseRequest" + "type": "google.cloud.oracledatabase_v1.types.ListAutonomousDbVersionsRequest" }, { - "name": "name", + "name": "parent", "type": "str" }, { @@ -3671,22 +7422,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.types.Database", - "shortName": "get_database" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListAutonomousDbVersionsPager", + "shortName": "list_autonomous_db_versions" }, - "description": "Sample for GetDatabase", - "file": "oracledatabase_v1_generated_oracle_database_get_database_sync.py", + "description": "Sample for ListAutonomousDbVersions", + "file": "oracledatabase_v1_generated_oracle_database_list_autonomous_db_versions_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetDatabase_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListAutonomousDbVersions_sync", "segments": [ { - "end": 51, + "end": 52, "start": 27, "type": "FULL" }, { - "end": 51, + "end": 52, "start": 27, "type": "SHORT" }, @@ -3706,12 +7457,12 @@ "type": "REQUEST_EXECUTION" }, { - "end": 52, + "end": 53, "start": 49, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_get_database_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_list_autonomous_db_versions_sync.py" }, { "canonical": true, @@ -3721,22 +7472,22 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.get_db_system", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_cloud_exadata_infrastructures", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetDbSystem", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListCloudExadataInfrastructures", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "GetDbSystem" + "shortName": "ListCloudExadataInfrastructures" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.GetDbSystemRequest" + "type": "google.cloud.oracledatabase_v1.types.ListCloudExadataInfrastructuresRequest" }, { - "name": "name", + "name": "parent", "type": "str" }, { @@ -3752,22 +7503,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.types.DbSystem", - "shortName": "get_db_system" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListCloudExadataInfrastructuresAsyncPager", + "shortName": "list_cloud_exadata_infrastructures" }, - "description": "Sample for GetDbSystem", - "file": "oracledatabase_v1_generated_oracle_database_get_db_system_async.py", + "description": "Sample for ListCloudExadataInfrastructures", + "file": "oracledatabase_v1_generated_oracle_database_list_cloud_exadata_infrastructures_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetDbSystem_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListCloudExadataInfrastructures_async", "segments": [ { - "end": 51, + "end": 52, "start": 27, "type": "FULL" }, { - "end": 51, + "end": 52, "start": 27, "type": "SHORT" }, @@ -3787,12 +7538,12 @@ "type": "REQUEST_EXECUTION" }, { - "end": 52, + "end": 53, "start": 49, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_get_db_system_async.py" + "title": "oracledatabase_v1_generated_oracle_database_list_cloud_exadata_infrastructures_async.py" }, { "canonical": true, @@ -3801,22 +7552,22 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.get_db_system", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_cloud_exadata_infrastructures", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetDbSystem", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListCloudExadataInfrastructures", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "GetDbSystem" + "shortName": "ListCloudExadataInfrastructures" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.GetDbSystemRequest" + "type": "google.cloud.oracledatabase_v1.types.ListCloudExadataInfrastructuresRequest" }, { - "name": "name", + "name": "parent", "type": "str" }, { @@ -3832,22 +7583,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.types.DbSystem", - "shortName": "get_db_system" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListCloudExadataInfrastructuresPager", + "shortName": "list_cloud_exadata_infrastructures" }, - "description": "Sample for GetDbSystem", - "file": "oracledatabase_v1_generated_oracle_database_get_db_system_sync.py", + "description": "Sample for ListCloudExadataInfrastructures", + "file": "oracledatabase_v1_generated_oracle_database_list_cloud_exadata_infrastructures_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetDbSystem_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListCloudExadataInfrastructures_sync", "segments": [ { - "end": 51, + "end": 52, "start": 27, "type": "FULL" }, { - "end": 51, + "end": 52, "start": 27, "type": "SHORT" }, @@ -3867,12 +7618,12 @@ "type": "REQUEST_EXECUTION" }, { - "end": 52, + "end": 53, "start": 49, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_get_db_system_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_list_cloud_exadata_infrastructures_sync.py" }, { "canonical": true, @@ -3882,22 +7633,22 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.get_exadb_vm_cluster", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_cloud_vm_clusters", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetExadbVmCluster", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListCloudVmClusters", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "GetExadbVmCluster" + "shortName": "ListCloudVmClusters" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.GetExadbVmClusterRequest" + "type": "google.cloud.oracledatabase_v1.types.ListCloudVmClustersRequest" }, { - "name": "name", + "name": "parent", "type": "str" }, { @@ -3913,22 +7664,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.types.ExadbVmCluster", - "shortName": "get_exadb_vm_cluster" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListCloudVmClustersAsyncPager", + "shortName": "list_cloud_vm_clusters" }, - "description": "Sample for GetExadbVmCluster", - "file": "oracledatabase_v1_generated_oracle_database_get_exadb_vm_cluster_async.py", + "description": "Sample for ListCloudVmClusters", + "file": "oracledatabase_v1_generated_oracle_database_list_cloud_vm_clusters_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetExadbVmCluster_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListCloudVmClusters_async", "segments": [ { - "end": 51, + "end": 52, "start": 27, "type": "FULL" }, { - "end": 51, + "end": 52, "start": 27, "type": "SHORT" }, @@ -3948,12 +7699,12 @@ "type": "REQUEST_EXECUTION" }, { - "end": 52, + "end": 53, "start": 49, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_get_exadb_vm_cluster_async.py" + "title": "oracledatabase_v1_generated_oracle_database_list_cloud_vm_clusters_async.py" }, { "canonical": true, @@ -3962,22 +7713,22 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.get_exadb_vm_cluster", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_cloud_vm_clusters", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetExadbVmCluster", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListCloudVmClusters", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "GetExadbVmCluster" + "shortName": "ListCloudVmClusters" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.GetExadbVmClusterRequest" + "type": "google.cloud.oracledatabase_v1.types.ListCloudVmClustersRequest" }, { - "name": "name", + "name": "parent", "type": "str" }, { @@ -3993,22 +7744,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.types.ExadbVmCluster", - "shortName": "get_exadb_vm_cluster" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListCloudVmClustersPager", + "shortName": "list_cloud_vm_clusters" }, - "description": "Sample for GetExadbVmCluster", - "file": "oracledatabase_v1_generated_oracle_database_get_exadb_vm_cluster_sync.py", + "description": "Sample for ListCloudVmClusters", + "file": "oracledatabase_v1_generated_oracle_database_list_cloud_vm_clusters_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetExadbVmCluster_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListCloudVmClusters_sync", "segments": [ { - "end": 51, + "end": 52, "start": 27, "type": "FULL" }, { - "end": 51, + "end": 52, "start": 27, "type": "SHORT" }, @@ -4028,12 +7779,12 @@ "type": "REQUEST_EXECUTION" }, { - "end": 52, + "end": 53, "start": 49, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_get_exadb_vm_cluster_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_list_cloud_vm_clusters_sync.py" }, { "canonical": true, @@ -4043,22 +7794,22 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.get_exascale_db_storage_vault", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_database_character_sets", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetExascaleDbStorageVault", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDatabaseCharacterSets", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "GetExascaleDbStorageVault" + "shortName": "ListDatabaseCharacterSets" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.GetExascaleDbStorageVaultRequest" + "type": "google.cloud.oracledatabase_v1.types.ListDatabaseCharacterSetsRequest" }, { - "name": "name", + "name": "parent", "type": "str" }, { @@ -4074,22 +7825,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.types.ExascaleDbStorageVault", - "shortName": "get_exascale_db_storage_vault" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDatabaseCharacterSetsAsyncPager", + "shortName": "list_database_character_sets" }, - "description": "Sample for GetExascaleDbStorageVault", - "file": "oracledatabase_v1_generated_oracle_database_get_exascale_db_storage_vault_async.py", + "description": "Sample for ListDatabaseCharacterSets", + "file": "oracledatabase_v1_generated_oracle_database_list_database_character_sets_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetExascaleDbStorageVault_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDatabaseCharacterSets_async", "segments": [ { - "end": 51, + "end": 52, "start": 27, "type": "FULL" }, { - "end": 51, + "end": 52, "start": 27, "type": "SHORT" }, @@ -4109,12 +7860,12 @@ "type": "REQUEST_EXECUTION" }, { - "end": 52, + "end": 53, "start": 49, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_get_exascale_db_storage_vault_async.py" + "title": "oracledatabase_v1_generated_oracle_database_list_database_character_sets_async.py" }, { "canonical": true, @@ -4123,22 +7874,22 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.get_exascale_db_storage_vault", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_database_character_sets", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetExascaleDbStorageVault", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDatabaseCharacterSets", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "GetExascaleDbStorageVault" + "shortName": "ListDatabaseCharacterSets" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.GetExascaleDbStorageVaultRequest" + "type": "google.cloud.oracledatabase_v1.types.ListDatabaseCharacterSetsRequest" }, { - "name": "name", + "name": "parent", "type": "str" }, { @@ -4154,22 +7905,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.types.ExascaleDbStorageVault", - "shortName": "get_exascale_db_storage_vault" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDatabaseCharacterSetsPager", + "shortName": "list_database_character_sets" }, - "description": "Sample for GetExascaleDbStorageVault", - "file": "oracledatabase_v1_generated_oracle_database_get_exascale_db_storage_vault_sync.py", + "description": "Sample for ListDatabaseCharacterSets", + "file": "oracledatabase_v1_generated_oracle_database_list_database_character_sets_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetExascaleDbStorageVault_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDatabaseCharacterSets_sync", "segments": [ { - "end": 51, + "end": 52, "start": 27, "type": "FULL" }, { - "end": 51, + "end": 52, "start": 27, "type": "SHORT" }, @@ -4189,12 +7940,12 @@ "type": "REQUEST_EXECUTION" }, { - "end": 52, + "end": 53, "start": 49, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_get_exascale_db_storage_vault_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_list_database_character_sets_sync.py" }, { "canonical": true, @@ -4204,22 +7955,22 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.get_odb_network", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_databases", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetOdbNetwork", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDatabases", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "GetOdbNetwork" + "shortName": "ListDatabases" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.GetOdbNetworkRequest" + "type": "google.cloud.oracledatabase_v1.types.ListDatabasesRequest" }, { - "name": "name", + "name": "parent", "type": "str" }, { @@ -4235,22 +7986,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.types.OdbNetwork", - "shortName": "get_odb_network" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDatabasesAsyncPager", + "shortName": "list_databases" }, - "description": "Sample for GetOdbNetwork", - "file": "oracledatabase_v1_generated_oracle_database_get_odb_network_async.py", + "description": "Sample for ListDatabases", + "file": "oracledatabase_v1_generated_oracle_database_list_databases_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetOdbNetwork_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDatabases_async", "segments": [ { - "end": 51, + "end": 52, "start": 27, "type": "FULL" }, { - "end": 51, + "end": 52, "start": 27, "type": "SHORT" }, @@ -4270,12 +8021,12 @@ "type": "REQUEST_EXECUTION" }, { - "end": 52, + "end": 53, "start": 49, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_get_odb_network_async.py" + "title": "oracledatabase_v1_generated_oracle_database_list_databases_async.py" }, { "canonical": true, @@ -4284,22 +8035,22 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.get_odb_network", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_databases", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetOdbNetwork", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDatabases", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "GetOdbNetwork" + "shortName": "ListDatabases" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.GetOdbNetworkRequest" + "type": "google.cloud.oracledatabase_v1.types.ListDatabasesRequest" }, { - "name": "name", + "name": "parent", "type": "str" }, { @@ -4315,22 +8066,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.types.OdbNetwork", - "shortName": "get_odb_network" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDatabasesPager", + "shortName": "list_databases" }, - "description": "Sample for GetOdbNetwork", - "file": "oracledatabase_v1_generated_oracle_database_get_odb_network_sync.py", + "description": "Sample for ListDatabases", + "file": "oracledatabase_v1_generated_oracle_database_list_databases_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetOdbNetwork_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDatabases_sync", "segments": [ { - "end": 51, + "end": 52, "start": 27, "type": "FULL" }, { - "end": 51, + "end": 52, "start": 27, "type": "SHORT" }, @@ -4350,12 +8101,12 @@ "type": "REQUEST_EXECUTION" }, { - "end": 52, + "end": 53, "start": 49, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_get_odb_network_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_list_databases_sync.py" }, { "canonical": true, @@ -4365,22 +8116,22 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.get_odb_subnet", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_db_nodes", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetOdbSubnet", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDbNodes", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "GetOdbSubnet" + "shortName": "ListDbNodes" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.GetOdbSubnetRequest" + "type": "google.cloud.oracledatabase_v1.types.ListDbNodesRequest" }, { - "name": "name", + "name": "parent", "type": "str" }, { @@ -4396,22 +8147,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.types.OdbSubnet", - "shortName": "get_odb_subnet" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbNodesAsyncPager", + "shortName": "list_db_nodes" }, - "description": "Sample for GetOdbSubnet", - "file": "oracledatabase_v1_generated_oracle_database_get_odb_subnet_async.py", + "description": "Sample for ListDbNodes", + "file": "oracledatabase_v1_generated_oracle_database_list_db_nodes_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetOdbSubnet_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDbNodes_async", "segments": [ { - "end": 51, + "end": 52, "start": 27, "type": "FULL" }, { - "end": 51, + "end": 52, "start": 27, "type": "SHORT" }, @@ -4431,12 +8182,12 @@ "type": "REQUEST_EXECUTION" }, { - "end": 52, + "end": 53, "start": 49, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_get_odb_subnet_async.py" + "title": "oracledatabase_v1_generated_oracle_database_list_db_nodes_async.py" }, { "canonical": true, @@ -4445,22 +8196,22 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.get_odb_subnet", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_db_nodes", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetOdbSubnet", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDbNodes", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "GetOdbSubnet" + "shortName": "ListDbNodes" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.GetOdbSubnetRequest" + "type": "google.cloud.oracledatabase_v1.types.ListDbNodesRequest" }, { - "name": "name", + "name": "parent", "type": "str" }, { @@ -4476,22 +8227,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.types.OdbSubnet", - "shortName": "get_odb_subnet" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbNodesPager", + "shortName": "list_db_nodes" }, - "description": "Sample for GetOdbSubnet", - "file": "oracledatabase_v1_generated_oracle_database_get_odb_subnet_sync.py", + "description": "Sample for ListDbNodes", + "file": "oracledatabase_v1_generated_oracle_database_list_db_nodes_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetOdbSubnet_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDbNodes_sync", "segments": [ { - "end": 51, + "end": 52, "start": 27, "type": "FULL" }, { - "end": 51, + "end": 52, "start": 27, "type": "SHORT" }, @@ -4511,12 +8262,12 @@ "type": "REQUEST_EXECUTION" }, { - "end": 52, + "end": 53, "start": 49, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_get_odb_subnet_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_list_db_nodes_sync.py" }, { "canonical": true, @@ -4526,22 +8277,22 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.get_pluggable_database", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_db_servers", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetPluggableDatabase", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDbServers", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "GetPluggableDatabase" + "shortName": "ListDbServers" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.GetPluggableDatabaseRequest" + "type": "google.cloud.oracledatabase_v1.types.ListDbServersRequest" }, { - "name": "name", + "name": "parent", "type": "str" }, { @@ -4557,22 +8308,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.types.PluggableDatabase", - "shortName": "get_pluggable_database" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbServersAsyncPager", + "shortName": "list_db_servers" }, - "description": "Sample for GetPluggableDatabase", - "file": "oracledatabase_v1_generated_oracle_database_get_pluggable_database_async.py", + "description": "Sample for ListDbServers", + "file": "oracledatabase_v1_generated_oracle_database_list_db_servers_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetPluggableDatabase_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDbServers_async", "segments": [ { - "end": 51, + "end": 52, "start": 27, "type": "FULL" }, { - "end": 51, + "end": 52, "start": 27, "type": "SHORT" }, @@ -4592,12 +8343,12 @@ "type": "REQUEST_EXECUTION" }, { - "end": 52, + "end": 53, "start": 49, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_get_pluggable_database_async.py" + "title": "oracledatabase_v1_generated_oracle_database_list_db_servers_async.py" }, { "canonical": true, @@ -4606,22 +8357,22 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.get_pluggable_database", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_db_servers", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.GetPluggableDatabase", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDbServers", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "GetPluggableDatabase" + "shortName": "ListDbServers" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.GetPluggableDatabaseRequest" + "type": "google.cloud.oracledatabase_v1.types.ListDbServersRequest" }, { - "name": "name", + "name": "parent", "type": "str" }, { @@ -4637,22 +8388,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.types.PluggableDatabase", - "shortName": "get_pluggable_database" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbServersPager", + "shortName": "list_db_servers" }, - "description": "Sample for GetPluggableDatabase", - "file": "oracledatabase_v1_generated_oracle_database_get_pluggable_database_sync.py", + "description": "Sample for ListDbServers", + "file": "oracledatabase_v1_generated_oracle_database_list_db_servers_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_GetPluggableDatabase_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDbServers_sync", "segments": [ { - "end": 51, + "end": 52, "start": 27, "type": "FULL" }, { - "end": 51, + "end": 52, "start": 27, "type": "SHORT" }, @@ -4672,12 +8423,12 @@ "type": "REQUEST_EXECUTION" }, { - "end": 52, + "end": 53, "start": 49, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_get_pluggable_database_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_list_db_servers_sync.py" }, { "canonical": true, @@ -4687,19 +8438,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_autonomous_database_backups", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_db_system_initial_storage_sizes", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListAutonomousDatabaseBackups", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDbSystemInitialStorageSizes", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListAutonomousDatabaseBackups" + "shortName": "ListDbSystemInitialStorageSizes" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListAutonomousDatabaseBackupsRequest" + "type": "google.cloud.oracledatabase_v1.types.ListDbSystemInitialStorageSizesRequest" }, { "name": "parent", @@ -4718,14 +8469,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListAutonomousDatabaseBackupsAsyncPager", - "shortName": "list_autonomous_database_backups" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbSystemInitialStorageSizesAsyncPager", + "shortName": "list_db_system_initial_storage_sizes" }, - "description": "Sample for ListAutonomousDatabaseBackups", - "file": "oracledatabase_v1_generated_oracle_database_list_autonomous_database_backups_async.py", + "description": "Sample for ListDbSystemInitialStorageSizes", + "file": "oracledatabase_v1_generated_oracle_database_list_db_system_initial_storage_sizes_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListAutonomousDatabaseBackups_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDbSystemInitialStorageSizes_async", "segments": [ { "end": 52, @@ -4758,7 +8509,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_autonomous_database_backups_async.py" + "title": "oracledatabase_v1_generated_oracle_database_list_db_system_initial_storage_sizes_async.py" }, { "canonical": true, @@ -4767,19 +8518,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_autonomous_database_backups", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_db_system_initial_storage_sizes", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListAutonomousDatabaseBackups", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDbSystemInitialStorageSizes", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListAutonomousDatabaseBackups" + "shortName": "ListDbSystemInitialStorageSizes" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListAutonomousDatabaseBackupsRequest" + "type": "google.cloud.oracledatabase_v1.types.ListDbSystemInitialStorageSizesRequest" }, { "name": "parent", @@ -4798,14 +8549,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListAutonomousDatabaseBackupsPager", - "shortName": "list_autonomous_database_backups" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbSystemInitialStorageSizesPager", + "shortName": "list_db_system_initial_storage_sizes" }, - "description": "Sample for ListAutonomousDatabaseBackups", - "file": "oracledatabase_v1_generated_oracle_database_list_autonomous_database_backups_sync.py", + "description": "Sample for ListDbSystemInitialStorageSizes", + "file": "oracledatabase_v1_generated_oracle_database_list_db_system_initial_storage_sizes_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListAutonomousDatabaseBackups_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDbSystemInitialStorageSizes_sync", "segments": [ { "end": 52, @@ -4838,7 +8589,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_autonomous_database_backups_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_list_db_system_initial_storage_sizes_sync.py" }, { "canonical": true, @@ -4848,19 +8599,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_autonomous_database_character_sets", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_db_system_shapes", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListAutonomousDatabaseCharacterSets", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDbSystemShapes", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListAutonomousDatabaseCharacterSets" + "shortName": "ListDbSystemShapes" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListAutonomousDatabaseCharacterSetsRequest" + "type": "google.cloud.oracledatabase_v1.types.ListDbSystemShapesRequest" }, { "name": "parent", @@ -4879,14 +8630,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListAutonomousDatabaseCharacterSetsAsyncPager", - "shortName": "list_autonomous_database_character_sets" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbSystemShapesAsyncPager", + "shortName": "list_db_system_shapes" }, - "description": "Sample for ListAutonomousDatabaseCharacterSets", - "file": "oracledatabase_v1_generated_oracle_database_list_autonomous_database_character_sets_async.py", + "description": "Sample for ListDbSystemShapes", + "file": "oracledatabase_v1_generated_oracle_database_list_db_system_shapes_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListAutonomousDatabaseCharacterSets_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDbSystemShapes_async", "segments": [ { "end": 52, @@ -4919,7 +8670,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_autonomous_database_character_sets_async.py" + "title": "oracledatabase_v1_generated_oracle_database_list_db_system_shapes_async.py" }, { "canonical": true, @@ -4928,19 +8679,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_autonomous_database_character_sets", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_db_system_shapes", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListAutonomousDatabaseCharacterSets", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDbSystemShapes", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListAutonomousDatabaseCharacterSets" + "shortName": "ListDbSystemShapes" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListAutonomousDatabaseCharacterSetsRequest" + "type": "google.cloud.oracledatabase_v1.types.ListDbSystemShapesRequest" }, { "name": "parent", @@ -4959,14 +8710,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListAutonomousDatabaseCharacterSetsPager", - "shortName": "list_autonomous_database_character_sets" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbSystemShapesPager", + "shortName": "list_db_system_shapes" }, - "description": "Sample for ListAutonomousDatabaseCharacterSets", - "file": "oracledatabase_v1_generated_oracle_database_list_autonomous_database_character_sets_sync.py", + "description": "Sample for ListDbSystemShapes", + "file": "oracledatabase_v1_generated_oracle_database_list_db_system_shapes_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListAutonomousDatabaseCharacterSets_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDbSystemShapes_sync", "segments": [ { "end": 52, @@ -4999,7 +8750,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_autonomous_database_character_sets_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_list_db_system_shapes_sync.py" }, { "canonical": true, @@ -5009,19 +8760,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_autonomous_databases", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_db_systems", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListAutonomousDatabases", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDbSystems", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListAutonomousDatabases" + "shortName": "ListDbSystems" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListAutonomousDatabasesRequest" + "type": "google.cloud.oracledatabase_v1.types.ListDbSystemsRequest" }, { "name": "parent", @@ -5040,14 +8791,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListAutonomousDatabasesAsyncPager", - "shortName": "list_autonomous_databases" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbSystemsAsyncPager", + "shortName": "list_db_systems" }, - "description": "Sample for ListAutonomousDatabases", - "file": "oracledatabase_v1_generated_oracle_database_list_autonomous_databases_async.py", + "description": "Sample for ListDbSystems", + "file": "oracledatabase_v1_generated_oracle_database_list_db_systems_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListAutonomousDatabases_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDbSystems_async", "segments": [ { "end": 52, @@ -5080,7 +8831,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_autonomous_databases_async.py" + "title": "oracledatabase_v1_generated_oracle_database_list_db_systems_async.py" }, { "canonical": true, @@ -5089,19 +8840,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_autonomous_databases", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_db_systems", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListAutonomousDatabases", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDbSystems", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListAutonomousDatabases" + "shortName": "ListDbSystems" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListAutonomousDatabasesRequest" + "type": "google.cloud.oracledatabase_v1.types.ListDbSystemsRequest" }, { "name": "parent", @@ -5120,14 +8871,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListAutonomousDatabasesPager", - "shortName": "list_autonomous_databases" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbSystemsPager", + "shortName": "list_db_systems" }, - "description": "Sample for ListAutonomousDatabases", - "file": "oracledatabase_v1_generated_oracle_database_list_autonomous_databases_sync.py", + "description": "Sample for ListDbSystems", + "file": "oracledatabase_v1_generated_oracle_database_list_db_systems_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListAutonomousDatabases_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDbSystems_sync", "segments": [ { "end": 52, @@ -5160,7 +8911,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_autonomous_databases_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_list_db_systems_sync.py" }, { "canonical": true, @@ -5170,19 +8921,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_autonomous_db_versions", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_db_versions", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListAutonomousDbVersions", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDbVersions", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListAutonomousDbVersions" + "shortName": "ListDbVersions" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListAutonomousDbVersionsRequest" + "type": "google.cloud.oracledatabase_v1.types.ListDbVersionsRequest" }, { "name": "parent", @@ -5201,14 +8952,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListAutonomousDbVersionsAsyncPager", - "shortName": "list_autonomous_db_versions" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbVersionsAsyncPager", + "shortName": "list_db_versions" }, - "description": "Sample for ListAutonomousDbVersions", - "file": "oracledatabase_v1_generated_oracle_database_list_autonomous_db_versions_async.py", + "description": "Sample for ListDbVersions", + "file": "oracledatabase_v1_generated_oracle_database_list_db_versions_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListAutonomousDbVersions_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDbVersions_async", "segments": [ { "end": 52, @@ -5241,7 +8992,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_autonomous_db_versions_async.py" + "title": "oracledatabase_v1_generated_oracle_database_list_db_versions_async.py" }, { "canonical": true, @@ -5250,19 +9001,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_autonomous_db_versions", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_db_versions", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListAutonomousDbVersions", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDbVersions", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListAutonomousDbVersions" + "shortName": "ListDbVersions" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListAutonomousDbVersionsRequest" + "type": "google.cloud.oracledatabase_v1.types.ListDbVersionsRequest" }, { "name": "parent", @@ -5281,14 +9032,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListAutonomousDbVersionsPager", - "shortName": "list_autonomous_db_versions" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbVersionsPager", + "shortName": "list_db_versions" }, - "description": "Sample for ListAutonomousDbVersions", - "file": "oracledatabase_v1_generated_oracle_database_list_autonomous_db_versions_sync.py", + "description": "Sample for ListDbVersions", + "file": "oracledatabase_v1_generated_oracle_database_list_db_versions_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListAutonomousDbVersions_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDbVersions_sync", "segments": [ { "end": 52, @@ -5321,7 +9072,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_autonomous_db_versions_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_list_db_versions_sync.py" }, { "canonical": true, @@ -5331,19 +9082,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_cloud_exadata_infrastructures", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_entitlements", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListCloudExadataInfrastructures", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListEntitlements", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListCloudExadataInfrastructures" + "shortName": "ListEntitlements" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListCloudExadataInfrastructuresRequest" + "type": "google.cloud.oracledatabase_v1.types.ListEntitlementsRequest" }, { "name": "parent", @@ -5362,14 +9113,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListCloudExadataInfrastructuresAsyncPager", - "shortName": "list_cloud_exadata_infrastructures" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListEntitlementsAsyncPager", + "shortName": "list_entitlements" }, - "description": "Sample for ListCloudExadataInfrastructures", - "file": "oracledatabase_v1_generated_oracle_database_list_cloud_exadata_infrastructures_async.py", + "description": "Sample for ListEntitlements", + "file": "oracledatabase_v1_generated_oracle_database_list_entitlements_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListCloudExadataInfrastructures_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListEntitlements_async", "segments": [ { "end": 52, @@ -5402,7 +9153,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_cloud_exadata_infrastructures_async.py" + "title": "oracledatabase_v1_generated_oracle_database_list_entitlements_async.py" }, { "canonical": true, @@ -5411,19 +9162,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_cloud_exadata_infrastructures", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_entitlements", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListCloudExadataInfrastructures", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListEntitlements", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListCloudExadataInfrastructures" + "shortName": "ListEntitlements" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListCloudExadataInfrastructuresRequest" + "type": "google.cloud.oracledatabase_v1.types.ListEntitlementsRequest" }, { "name": "parent", @@ -5442,14 +9193,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListCloudExadataInfrastructuresPager", - "shortName": "list_cloud_exadata_infrastructures" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListEntitlementsPager", + "shortName": "list_entitlements" }, - "description": "Sample for ListCloudExadataInfrastructures", - "file": "oracledatabase_v1_generated_oracle_database_list_cloud_exadata_infrastructures_sync.py", + "description": "Sample for ListEntitlements", + "file": "oracledatabase_v1_generated_oracle_database_list_entitlements_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListCloudExadataInfrastructures_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListEntitlements_sync", "segments": [ { "end": 52, @@ -5482,7 +9233,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_cloud_exadata_infrastructures_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_list_entitlements_sync.py" }, { "canonical": true, @@ -5492,19 +9243,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_cloud_vm_clusters", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_exadb_vm_clusters", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListCloudVmClusters", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListExadbVmClusters", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListCloudVmClusters" + "shortName": "ListExadbVmClusters" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListCloudVmClustersRequest" + "type": "google.cloud.oracledatabase_v1.types.ListExadbVmClustersRequest" }, { "name": "parent", @@ -5523,14 +9274,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListCloudVmClustersAsyncPager", - "shortName": "list_cloud_vm_clusters" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListExadbVmClustersAsyncPager", + "shortName": "list_exadb_vm_clusters" }, - "description": "Sample for ListCloudVmClusters", - "file": "oracledatabase_v1_generated_oracle_database_list_cloud_vm_clusters_async.py", + "description": "Sample for ListExadbVmClusters", + "file": "oracledatabase_v1_generated_oracle_database_list_exadb_vm_clusters_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListCloudVmClusters_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListExadbVmClusters_async", "segments": [ { "end": 52, @@ -5563,7 +9314,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_cloud_vm_clusters_async.py" + "title": "oracledatabase_v1_generated_oracle_database_list_exadb_vm_clusters_async.py" }, { "canonical": true, @@ -5572,19 +9323,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_cloud_vm_clusters", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_exadb_vm_clusters", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListCloudVmClusters", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListExadbVmClusters", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListCloudVmClusters" + "shortName": "ListExadbVmClusters" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListCloudVmClustersRequest" + "type": "google.cloud.oracledatabase_v1.types.ListExadbVmClustersRequest" }, { "name": "parent", @@ -5603,14 +9354,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListCloudVmClustersPager", - "shortName": "list_cloud_vm_clusters" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListExadbVmClustersPager", + "shortName": "list_exadb_vm_clusters" }, - "description": "Sample for ListCloudVmClusters", - "file": "oracledatabase_v1_generated_oracle_database_list_cloud_vm_clusters_sync.py", + "description": "Sample for ListExadbVmClusters", + "file": "oracledatabase_v1_generated_oracle_database_list_exadb_vm_clusters_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListCloudVmClusters_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListExadbVmClusters_sync", "segments": [ { "end": 52, @@ -5643,7 +9394,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_cloud_vm_clusters_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_list_exadb_vm_clusters_sync.py" }, { "canonical": true, @@ -5653,19 +9404,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_database_character_sets", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_exascale_db_storage_vaults", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDatabaseCharacterSets", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListExascaleDbStorageVaults", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListDatabaseCharacterSets" + "shortName": "ListExascaleDbStorageVaults" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListDatabaseCharacterSetsRequest" + "type": "google.cloud.oracledatabase_v1.types.ListExascaleDbStorageVaultsRequest" }, { "name": "parent", @@ -5684,14 +9435,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDatabaseCharacterSetsAsyncPager", - "shortName": "list_database_character_sets" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListExascaleDbStorageVaultsAsyncPager", + "shortName": "list_exascale_db_storage_vaults" }, - "description": "Sample for ListDatabaseCharacterSets", - "file": "oracledatabase_v1_generated_oracle_database_list_database_character_sets_async.py", + "description": "Sample for ListExascaleDbStorageVaults", + "file": "oracledatabase_v1_generated_oracle_database_list_exascale_db_storage_vaults_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDatabaseCharacterSets_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListExascaleDbStorageVaults_async", "segments": [ { "end": 52, @@ -5724,7 +9475,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_database_character_sets_async.py" + "title": "oracledatabase_v1_generated_oracle_database_list_exascale_db_storage_vaults_async.py" }, { "canonical": true, @@ -5733,19 +9484,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_database_character_sets", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_exascale_db_storage_vaults", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDatabaseCharacterSets", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListExascaleDbStorageVaults", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListDatabaseCharacterSets" + "shortName": "ListExascaleDbStorageVaults" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListDatabaseCharacterSetsRequest" + "type": "google.cloud.oracledatabase_v1.types.ListExascaleDbStorageVaultsRequest" }, { "name": "parent", @@ -5764,14 +9515,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDatabaseCharacterSetsPager", - "shortName": "list_database_character_sets" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListExascaleDbStorageVaultsPager", + "shortName": "list_exascale_db_storage_vaults" }, - "description": "Sample for ListDatabaseCharacterSets", - "file": "oracledatabase_v1_generated_oracle_database_list_database_character_sets_sync.py", + "description": "Sample for ListExascaleDbStorageVaults", + "file": "oracledatabase_v1_generated_oracle_database_list_exascale_db_storage_vaults_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDatabaseCharacterSets_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListExascaleDbStorageVaults_sync", "segments": [ { "end": 52, @@ -5804,7 +9555,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_database_character_sets_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_list_exascale_db_storage_vaults_sync.py" }, { "canonical": true, @@ -5814,19 +9565,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_databases", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_gi_versions", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDatabases", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListGiVersions", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListDatabases" + "shortName": "ListGiVersions" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListDatabasesRequest" + "type": "google.cloud.oracledatabase_v1.types.ListGiVersionsRequest" }, { "name": "parent", @@ -5845,14 +9596,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDatabasesAsyncPager", - "shortName": "list_databases" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGiVersionsAsyncPager", + "shortName": "list_gi_versions" }, - "description": "Sample for ListDatabases", - "file": "oracledatabase_v1_generated_oracle_database_list_databases_async.py", + "description": "Sample for ListGiVersions", + "file": "oracledatabase_v1_generated_oracle_database_list_gi_versions_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDatabases_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListGiVersions_async", "segments": [ { "end": 52, @@ -5885,7 +9636,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_databases_async.py" + "title": "oracledatabase_v1_generated_oracle_database_list_gi_versions_async.py" }, { "canonical": true, @@ -5894,19 +9645,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_databases", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_gi_versions", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDatabases", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListGiVersions", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListDatabases" + "shortName": "ListGiVersions" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListDatabasesRequest" + "type": "google.cloud.oracledatabase_v1.types.ListGiVersionsRequest" }, { "name": "parent", @@ -5925,14 +9676,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDatabasesPager", - "shortName": "list_databases" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGiVersionsPager", + "shortName": "list_gi_versions" }, - "description": "Sample for ListDatabases", - "file": "oracledatabase_v1_generated_oracle_database_list_databases_sync.py", + "description": "Sample for ListGiVersions", + "file": "oracledatabase_v1_generated_oracle_database_list_gi_versions_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDatabases_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListGiVersions_sync", "segments": [ { "end": 52, @@ -5965,7 +9716,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_databases_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_list_gi_versions_sync.py" }, { "canonical": true, @@ -5975,19 +9726,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_db_nodes", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_goldengate_connection_assignments", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDbNodes", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListGoldengateConnectionAssignments", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListDbNodes" + "shortName": "ListGoldengateConnectionAssignments" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListDbNodesRequest" + "type": "google.cloud.oracledatabase_v1.types.ListGoldengateConnectionAssignmentsRequest" }, { "name": "parent", @@ -6006,14 +9757,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbNodesAsyncPager", - "shortName": "list_db_nodes" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateConnectionAssignmentsAsyncPager", + "shortName": "list_goldengate_connection_assignments" }, - "description": "Sample for ListDbNodes", - "file": "oracledatabase_v1_generated_oracle_database_list_db_nodes_async.py", + "description": "Sample for ListGoldengateConnectionAssignments", + "file": "oracledatabase_v1_generated_oracle_database_list_goldengate_connection_assignments_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDbNodes_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListGoldengateConnectionAssignments_async", "segments": [ { "end": 52, @@ -6046,7 +9797,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_db_nodes_async.py" + "title": "oracledatabase_v1_generated_oracle_database_list_goldengate_connection_assignments_async.py" }, { "canonical": true, @@ -6055,19 +9806,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_db_nodes", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_goldengate_connection_assignments", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDbNodes", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListGoldengateConnectionAssignments", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListDbNodes" + "shortName": "ListGoldengateConnectionAssignments" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListDbNodesRequest" + "type": "google.cloud.oracledatabase_v1.types.ListGoldengateConnectionAssignmentsRequest" }, { "name": "parent", @@ -6086,14 +9837,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbNodesPager", - "shortName": "list_db_nodes" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateConnectionAssignmentsPager", + "shortName": "list_goldengate_connection_assignments" }, - "description": "Sample for ListDbNodes", - "file": "oracledatabase_v1_generated_oracle_database_list_db_nodes_sync.py", + "description": "Sample for ListGoldengateConnectionAssignments", + "file": "oracledatabase_v1_generated_oracle_database_list_goldengate_connection_assignments_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDbNodes_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListGoldengateConnectionAssignments_sync", "segments": [ { "end": 52, @@ -6126,7 +9877,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_db_nodes_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_list_goldengate_connection_assignments_sync.py" }, { "canonical": true, @@ -6136,19 +9887,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_db_servers", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_goldengate_connection_types", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDbServers", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListGoldengateConnectionTypes", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListDbServers" + "shortName": "ListGoldengateConnectionTypes" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListDbServersRequest" + "type": "google.cloud.oracledatabase_v1.types.ListGoldengateConnectionTypesRequest" }, { "name": "parent", @@ -6167,14 +9918,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbServersAsyncPager", - "shortName": "list_db_servers" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateConnectionTypesAsyncPager", + "shortName": "list_goldengate_connection_types" }, - "description": "Sample for ListDbServers", - "file": "oracledatabase_v1_generated_oracle_database_list_db_servers_async.py", + "description": "Sample for ListGoldengateConnectionTypes", + "file": "oracledatabase_v1_generated_oracle_database_list_goldengate_connection_types_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDbServers_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListGoldengateConnectionTypes_async", "segments": [ { "end": 52, @@ -6207,7 +9958,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_db_servers_async.py" + "title": "oracledatabase_v1_generated_oracle_database_list_goldengate_connection_types_async.py" }, { "canonical": true, @@ -6216,19 +9967,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_db_servers", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_goldengate_connection_types", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDbServers", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListGoldengateConnectionTypes", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListDbServers" + "shortName": "ListGoldengateConnectionTypes" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListDbServersRequest" + "type": "google.cloud.oracledatabase_v1.types.ListGoldengateConnectionTypesRequest" }, { "name": "parent", @@ -6247,14 +9998,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbServersPager", - "shortName": "list_db_servers" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateConnectionTypesPager", + "shortName": "list_goldengate_connection_types" }, - "description": "Sample for ListDbServers", - "file": "oracledatabase_v1_generated_oracle_database_list_db_servers_sync.py", + "description": "Sample for ListGoldengateConnectionTypes", + "file": "oracledatabase_v1_generated_oracle_database_list_goldengate_connection_types_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDbServers_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListGoldengateConnectionTypes_sync", "segments": [ { "end": 52, @@ -6287,7 +10038,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_db_servers_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_list_goldengate_connection_types_sync.py" }, { "canonical": true, @@ -6297,19 +10048,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_db_system_initial_storage_sizes", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_goldengate_connections", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDbSystemInitialStorageSizes", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListGoldengateConnections", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListDbSystemInitialStorageSizes" + "shortName": "ListGoldengateConnections" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListDbSystemInitialStorageSizesRequest" + "type": "google.cloud.oracledatabase_v1.types.ListGoldengateConnectionsRequest" }, { "name": "parent", @@ -6328,14 +10079,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbSystemInitialStorageSizesAsyncPager", - "shortName": "list_db_system_initial_storage_sizes" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateConnectionsAsyncPager", + "shortName": "list_goldengate_connections" }, - "description": "Sample for ListDbSystemInitialStorageSizes", - "file": "oracledatabase_v1_generated_oracle_database_list_db_system_initial_storage_sizes_async.py", + "description": "Sample for ListGoldengateConnections", + "file": "oracledatabase_v1_generated_oracle_database_list_goldengate_connections_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDbSystemInitialStorageSizes_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListGoldengateConnections_async", "segments": [ { "end": 52, @@ -6368,7 +10119,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_db_system_initial_storage_sizes_async.py" + "title": "oracledatabase_v1_generated_oracle_database_list_goldengate_connections_async.py" }, { "canonical": true, @@ -6377,19 +10128,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_db_system_initial_storage_sizes", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_goldengate_connections", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDbSystemInitialStorageSizes", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListGoldengateConnections", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListDbSystemInitialStorageSizes" + "shortName": "ListGoldengateConnections" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListDbSystemInitialStorageSizesRequest" + "type": "google.cloud.oracledatabase_v1.types.ListGoldengateConnectionsRequest" }, { "name": "parent", @@ -6408,14 +10159,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbSystemInitialStorageSizesPager", - "shortName": "list_db_system_initial_storage_sizes" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateConnectionsPager", + "shortName": "list_goldengate_connections" }, - "description": "Sample for ListDbSystemInitialStorageSizes", - "file": "oracledatabase_v1_generated_oracle_database_list_db_system_initial_storage_sizes_sync.py", + "description": "Sample for ListGoldengateConnections", + "file": "oracledatabase_v1_generated_oracle_database_list_goldengate_connections_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDbSystemInitialStorageSizes_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListGoldengateConnections_sync", "segments": [ { "end": 52, @@ -6448,7 +10199,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_db_system_initial_storage_sizes_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_list_goldengate_connections_sync.py" }, { "canonical": true, @@ -6458,19 +10209,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_db_system_shapes", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_goldengate_deployment_environments", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDbSystemShapes", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListGoldengateDeploymentEnvironments", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListDbSystemShapes" + "shortName": "ListGoldengateDeploymentEnvironments" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListDbSystemShapesRequest" + "type": "google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentEnvironmentsRequest" }, { "name": "parent", @@ -6489,14 +10240,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbSystemShapesAsyncPager", - "shortName": "list_db_system_shapes" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateDeploymentEnvironmentsAsyncPager", + "shortName": "list_goldengate_deployment_environments" }, - "description": "Sample for ListDbSystemShapes", - "file": "oracledatabase_v1_generated_oracle_database_list_db_system_shapes_async.py", + "description": "Sample for ListGoldengateDeploymentEnvironments", + "file": "oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_environments_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDbSystemShapes_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListGoldengateDeploymentEnvironments_async", "segments": [ { "end": 52, @@ -6529,7 +10280,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_db_system_shapes_async.py" + "title": "oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_environments_async.py" }, { "canonical": true, @@ -6538,19 +10289,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_db_system_shapes", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_goldengate_deployment_environments", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDbSystemShapes", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListGoldengateDeploymentEnvironments", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListDbSystemShapes" + "shortName": "ListGoldengateDeploymentEnvironments" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListDbSystemShapesRequest" + "type": "google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentEnvironmentsRequest" }, { "name": "parent", @@ -6569,14 +10320,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbSystemShapesPager", - "shortName": "list_db_system_shapes" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateDeploymentEnvironmentsPager", + "shortName": "list_goldengate_deployment_environments" }, - "description": "Sample for ListDbSystemShapes", - "file": "oracledatabase_v1_generated_oracle_database_list_db_system_shapes_sync.py", + "description": "Sample for ListGoldengateDeploymentEnvironments", + "file": "oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_environments_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDbSystemShapes_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListGoldengateDeploymentEnvironments_sync", "segments": [ { "end": 52, @@ -6609,7 +10360,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_db_system_shapes_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_environments_sync.py" }, { "canonical": true, @@ -6619,19 +10370,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_db_systems", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_goldengate_deployment_types", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDbSystems", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListGoldengateDeploymentTypes", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListDbSystems" + "shortName": "ListGoldengateDeploymentTypes" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListDbSystemsRequest" + "type": "google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentTypesRequest" }, { "name": "parent", @@ -6650,14 +10401,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbSystemsAsyncPager", - "shortName": "list_db_systems" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateDeploymentTypesAsyncPager", + "shortName": "list_goldengate_deployment_types" }, - "description": "Sample for ListDbSystems", - "file": "oracledatabase_v1_generated_oracle_database_list_db_systems_async.py", + "description": "Sample for ListGoldengateDeploymentTypes", + "file": "oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_types_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDbSystems_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListGoldengateDeploymentTypes_async", "segments": [ { "end": 52, @@ -6690,7 +10441,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_db_systems_async.py" + "title": "oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_types_async.py" }, { "canonical": true, @@ -6699,19 +10450,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_db_systems", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_goldengate_deployment_types", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDbSystems", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListGoldengateDeploymentTypes", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListDbSystems" + "shortName": "ListGoldengateDeploymentTypes" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListDbSystemsRequest" + "type": "google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentTypesRequest" }, { "name": "parent", @@ -6730,14 +10481,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbSystemsPager", - "shortName": "list_db_systems" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateDeploymentTypesPager", + "shortName": "list_goldengate_deployment_types" }, - "description": "Sample for ListDbSystems", - "file": "oracledatabase_v1_generated_oracle_database_list_db_systems_sync.py", + "description": "Sample for ListGoldengateDeploymentTypes", + "file": "oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_types_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDbSystems_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListGoldengateDeploymentTypes_sync", "segments": [ { "end": 52, @@ -6770,7 +10521,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_db_systems_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_types_sync.py" }, { "canonical": true, @@ -6780,19 +10531,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_db_versions", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_goldengate_deployment_versions", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDbVersions", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListGoldengateDeploymentVersions", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListDbVersions" + "shortName": "ListGoldengateDeploymentVersions" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListDbVersionsRequest" + "type": "google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentVersionsRequest" }, { "name": "parent", @@ -6811,14 +10562,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbVersionsAsyncPager", - "shortName": "list_db_versions" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateDeploymentVersionsAsyncPager", + "shortName": "list_goldengate_deployment_versions" }, - "description": "Sample for ListDbVersions", - "file": "oracledatabase_v1_generated_oracle_database_list_db_versions_async.py", + "description": "Sample for ListGoldengateDeploymentVersions", + "file": "oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_versions_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDbVersions_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListGoldengateDeploymentVersions_async", "segments": [ { "end": 52, @@ -6851,7 +10602,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_db_versions_async.py" + "title": "oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_versions_async.py" }, { "canonical": true, @@ -6860,19 +10611,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_db_versions", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_goldengate_deployment_versions", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListDbVersions", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListGoldengateDeploymentVersions", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListDbVersions" + "shortName": "ListGoldengateDeploymentVersions" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListDbVersionsRequest" + "type": "google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentVersionsRequest" }, { "name": "parent", @@ -6891,14 +10642,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListDbVersionsPager", - "shortName": "list_db_versions" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateDeploymentVersionsPager", + "shortName": "list_goldengate_deployment_versions" }, - "description": "Sample for ListDbVersions", - "file": "oracledatabase_v1_generated_oracle_database_list_db_versions_sync.py", + "description": "Sample for ListGoldengateDeploymentVersions", + "file": "oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_versions_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListDbVersions_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListGoldengateDeploymentVersions_sync", "segments": [ { "end": 52, @@ -6931,7 +10682,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_db_versions_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_list_goldengate_deployment_versions_sync.py" }, { "canonical": true, @@ -6941,19 +10692,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_entitlements", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_goldengate_deployments", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListEntitlements", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListGoldengateDeployments", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListEntitlements" + "shortName": "ListGoldengateDeployments" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListEntitlementsRequest" + "type": "google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentsRequest" }, { "name": "parent", @@ -6972,14 +10723,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListEntitlementsAsyncPager", - "shortName": "list_entitlements" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateDeploymentsAsyncPager", + "shortName": "list_goldengate_deployments" }, - "description": "Sample for ListEntitlements", - "file": "oracledatabase_v1_generated_oracle_database_list_entitlements_async.py", + "description": "Sample for ListGoldengateDeployments", + "file": "oracledatabase_v1_generated_oracle_database_list_goldengate_deployments_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListEntitlements_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListGoldengateDeployments_async", "segments": [ { "end": 52, @@ -7012,7 +10763,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_entitlements_async.py" + "title": "oracledatabase_v1_generated_oracle_database_list_goldengate_deployments_async.py" }, { "canonical": true, @@ -7021,19 +10772,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_entitlements", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_goldengate_deployments", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListEntitlements", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListGoldengateDeployments", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListEntitlements" + "shortName": "ListGoldengateDeployments" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListEntitlementsRequest" + "type": "google.cloud.oracledatabase_v1.types.ListGoldengateDeploymentsRequest" }, { "name": "parent", @@ -7052,14 +10803,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListEntitlementsPager", - "shortName": "list_entitlements" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGoldengateDeploymentsPager", + "shortName": "list_goldengate_deployments" }, - "description": "Sample for ListEntitlements", - "file": "oracledatabase_v1_generated_oracle_database_list_entitlements_sync.py", + "description": "Sample for ListGoldengateDeployments", + "file": "oracledatabase_v1_generated_oracle_database_list_goldengate_deployments_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListEntitlements_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListGoldengateDeployments_sync", "segments": [ { "end": 52, @@ -7092,7 +10843,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_entitlements_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_list_goldengate_deployments_sync.py" }, { "canonical": true, @@ -7102,19 +10853,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_exadb_vm_clusters", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_minor_versions", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListExadbVmClusters", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListMinorVersions", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListExadbVmClusters" + "shortName": "ListMinorVersions" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListExadbVmClustersRequest" + "type": "google.cloud.oracledatabase_v1.types.ListMinorVersionsRequest" }, { "name": "parent", @@ -7133,14 +10884,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListExadbVmClustersAsyncPager", - "shortName": "list_exadb_vm_clusters" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListMinorVersionsAsyncPager", + "shortName": "list_minor_versions" }, - "description": "Sample for ListExadbVmClusters", - "file": "oracledatabase_v1_generated_oracle_database_list_exadb_vm_clusters_async.py", + "description": "Sample for ListMinorVersions", + "file": "oracledatabase_v1_generated_oracle_database_list_minor_versions_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListExadbVmClusters_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListMinorVersions_async", "segments": [ { "end": 52, @@ -7173,7 +10924,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_exadb_vm_clusters_async.py" + "title": "oracledatabase_v1_generated_oracle_database_list_minor_versions_async.py" }, { "canonical": true, @@ -7182,19 +10933,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_exadb_vm_clusters", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_minor_versions", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListExadbVmClusters", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListMinorVersions", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListExadbVmClusters" + "shortName": "ListMinorVersions" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListExadbVmClustersRequest" + "type": "google.cloud.oracledatabase_v1.types.ListMinorVersionsRequest" }, { "name": "parent", @@ -7213,14 +10964,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListExadbVmClustersPager", - "shortName": "list_exadb_vm_clusters" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListMinorVersionsPager", + "shortName": "list_minor_versions" }, - "description": "Sample for ListExadbVmClusters", - "file": "oracledatabase_v1_generated_oracle_database_list_exadb_vm_clusters_sync.py", + "description": "Sample for ListMinorVersions", + "file": "oracledatabase_v1_generated_oracle_database_list_minor_versions_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListExadbVmClusters_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListMinorVersions_sync", "segments": [ { "end": 52, @@ -7253,7 +11004,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_exadb_vm_clusters_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_list_minor_versions_sync.py" }, { "canonical": true, @@ -7263,19 +11014,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_exascale_db_storage_vaults", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_odb_networks", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListExascaleDbStorageVaults", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListOdbNetworks", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListExascaleDbStorageVaults" + "shortName": "ListOdbNetworks" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListExascaleDbStorageVaultsRequest" + "type": "google.cloud.oracledatabase_v1.types.ListOdbNetworksRequest" }, { "name": "parent", @@ -7294,14 +11045,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListExascaleDbStorageVaultsAsyncPager", - "shortName": "list_exascale_db_storage_vaults" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListOdbNetworksAsyncPager", + "shortName": "list_odb_networks" }, - "description": "Sample for ListExascaleDbStorageVaults", - "file": "oracledatabase_v1_generated_oracle_database_list_exascale_db_storage_vaults_async.py", + "description": "Sample for ListOdbNetworks", + "file": "oracledatabase_v1_generated_oracle_database_list_odb_networks_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListExascaleDbStorageVaults_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListOdbNetworks_async", "segments": [ { "end": 52, @@ -7334,7 +11085,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_exascale_db_storage_vaults_async.py" + "title": "oracledatabase_v1_generated_oracle_database_list_odb_networks_async.py" }, { "canonical": true, @@ -7343,19 +11094,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_exascale_db_storage_vaults", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_odb_networks", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListExascaleDbStorageVaults", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListOdbNetworks", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListExascaleDbStorageVaults" + "shortName": "ListOdbNetworks" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListExascaleDbStorageVaultsRequest" + "type": "google.cloud.oracledatabase_v1.types.ListOdbNetworksRequest" }, { "name": "parent", @@ -7374,14 +11125,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListExascaleDbStorageVaultsPager", - "shortName": "list_exascale_db_storage_vaults" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListOdbNetworksPager", + "shortName": "list_odb_networks" }, - "description": "Sample for ListExascaleDbStorageVaults", - "file": "oracledatabase_v1_generated_oracle_database_list_exascale_db_storage_vaults_sync.py", + "description": "Sample for ListOdbNetworks", + "file": "oracledatabase_v1_generated_oracle_database_list_odb_networks_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListExascaleDbStorageVaults_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListOdbNetworks_sync", "segments": [ { "end": 52, @@ -7414,7 +11165,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_exascale_db_storage_vaults_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_list_odb_networks_sync.py" }, { "canonical": true, @@ -7424,19 +11175,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_gi_versions", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_odb_subnets", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListGiVersions", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListOdbSubnets", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListGiVersions" + "shortName": "ListOdbSubnets" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListGiVersionsRequest" + "type": "google.cloud.oracledatabase_v1.types.ListOdbSubnetsRequest" }, { "name": "parent", @@ -7455,14 +11206,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGiVersionsAsyncPager", - "shortName": "list_gi_versions" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListOdbSubnetsAsyncPager", + "shortName": "list_odb_subnets" }, - "description": "Sample for ListGiVersions", - "file": "oracledatabase_v1_generated_oracle_database_list_gi_versions_async.py", + "description": "Sample for ListOdbSubnets", + "file": "oracledatabase_v1_generated_oracle_database_list_odb_subnets_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListGiVersions_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListOdbSubnets_async", "segments": [ { "end": 52, @@ -7495,7 +11246,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_gi_versions_async.py" + "title": "oracledatabase_v1_generated_oracle_database_list_odb_subnets_async.py" }, { "canonical": true, @@ -7504,19 +11255,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_gi_versions", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_odb_subnets", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListGiVersions", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListOdbSubnets", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListGiVersions" + "shortName": "ListOdbSubnets" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListGiVersionsRequest" + "type": "google.cloud.oracledatabase_v1.types.ListOdbSubnetsRequest" }, { "name": "parent", @@ -7535,14 +11286,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListGiVersionsPager", - "shortName": "list_gi_versions" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListOdbSubnetsPager", + "shortName": "list_odb_subnets" }, - "description": "Sample for ListGiVersions", - "file": "oracledatabase_v1_generated_oracle_database_list_gi_versions_sync.py", + "description": "Sample for ListOdbSubnets", + "file": "oracledatabase_v1_generated_oracle_database_list_odb_subnets_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListGiVersions_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListOdbSubnets_sync", "segments": [ { "end": 52, @@ -7575,7 +11326,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_gi_versions_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_list_odb_subnets_sync.py" }, { "canonical": true, @@ -7585,19 +11336,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_minor_versions", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_pluggable_databases", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListMinorVersions", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListPluggableDatabases", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListMinorVersions" + "shortName": "ListPluggableDatabases" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListMinorVersionsRequest" + "type": "google.cloud.oracledatabase_v1.types.ListPluggableDatabasesRequest" }, { "name": "parent", @@ -7616,14 +11367,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListMinorVersionsAsyncPager", - "shortName": "list_minor_versions" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListPluggableDatabasesAsyncPager", + "shortName": "list_pluggable_databases" }, - "description": "Sample for ListMinorVersions", - "file": "oracledatabase_v1_generated_oracle_database_list_minor_versions_async.py", + "description": "Sample for ListPluggableDatabases", + "file": "oracledatabase_v1_generated_oracle_database_list_pluggable_databases_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListMinorVersions_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListPluggableDatabases_async", "segments": [ { "end": 52, @@ -7656,7 +11407,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_minor_versions_async.py" + "title": "oracledatabase_v1_generated_oracle_database_list_pluggable_databases_async.py" }, { "canonical": true, @@ -7665,19 +11416,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_minor_versions", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_pluggable_databases", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListMinorVersions", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListPluggableDatabases", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListMinorVersions" + "shortName": "ListPluggableDatabases" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListMinorVersionsRequest" + "type": "google.cloud.oracledatabase_v1.types.ListPluggableDatabasesRequest" }, { "name": "parent", @@ -7696,14 +11447,14 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListMinorVersionsPager", - "shortName": "list_minor_versions" + "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListPluggableDatabasesPager", + "shortName": "list_pluggable_databases" }, - "description": "Sample for ListMinorVersions", - "file": "oracledatabase_v1_generated_oracle_database_list_minor_versions_sync.py", + "description": "Sample for ListPluggableDatabases", + "file": "oracledatabase_v1_generated_oracle_database_list_pluggable_databases_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListMinorVersions_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListPluggableDatabases_sync", "segments": [ { "end": 52, @@ -7736,7 +11487,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_minor_versions_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_list_pluggable_databases_sync.py" }, { "canonical": true, @@ -7746,24 +11497,28 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_odb_networks", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.remove_virtual_machine_exadb_vm_cluster", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListOdbNetworks", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.RemoveVirtualMachineExadbVmCluster", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListOdbNetworks" + "shortName": "RemoveVirtualMachineExadbVmCluster" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListOdbNetworksRequest" + "type": "google.cloud.oracledatabase_v1.types.RemoveVirtualMachineExadbVmClusterRequest" }, { - "name": "parent", + "name": "name", "type": "str" }, + { + "name": "hostnames", + "type": "MutableSequence[str]" + }, { "name": "retry", "type": "google.api_core.retry.Retry" @@ -7777,22 +11532,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListOdbNetworksAsyncPager", - "shortName": "list_odb_networks" + "resultType": "google.api_core.operation_async.AsyncOperation", + "shortName": "remove_virtual_machine_exadb_vm_cluster" }, - "description": "Sample for ListOdbNetworks", - "file": "oracledatabase_v1_generated_oracle_database_list_odb_networks_async.py", + "description": "Sample for RemoveVirtualMachineExadbVmCluster", + "file": "oracledatabase_v1_generated_oracle_database_remove_virtual_machine_exadb_vm_cluster_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListOdbNetworks_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_RemoveVirtualMachineExadbVmCluster_async", "segments": [ { - "end": 52, + "end": 56, "start": 27, "type": "FULL" }, { - "end": 52, + "end": 56, "start": 27, "type": "SHORT" }, @@ -7802,22 +11557,22 @@ "type": "CLIENT_INITIALIZATION" }, { - "end": 45, + "end": 46, "start": 41, "type": "REQUEST_INITIALIZATION" }, { - "end": 48, - "start": 46, + "end": 53, + "start": 47, "type": "REQUEST_EXECUTION" }, { - "end": 53, - "start": 49, + "end": 57, + "start": 54, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_odb_networks_async.py" + "title": "oracledatabase_v1_generated_oracle_database_remove_virtual_machine_exadb_vm_cluster_async.py" }, { "canonical": true, @@ -7826,24 +11581,28 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_odb_networks", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.remove_virtual_machine_exadb_vm_cluster", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListOdbNetworks", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.RemoveVirtualMachineExadbVmCluster", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListOdbNetworks" + "shortName": "RemoveVirtualMachineExadbVmCluster" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListOdbNetworksRequest" + "type": "google.cloud.oracledatabase_v1.types.RemoveVirtualMachineExadbVmClusterRequest" }, { - "name": "parent", + "name": "name", "type": "str" }, + { + "name": "hostnames", + "type": "MutableSequence[str]" + }, { "name": "retry", "type": "google.api_core.retry.Retry" @@ -7857,22 +11616,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListOdbNetworksPager", - "shortName": "list_odb_networks" + "resultType": "google.api_core.operation.Operation", + "shortName": "remove_virtual_machine_exadb_vm_cluster" }, - "description": "Sample for ListOdbNetworks", - "file": "oracledatabase_v1_generated_oracle_database_list_odb_networks_sync.py", + "description": "Sample for RemoveVirtualMachineExadbVmCluster", + "file": "oracledatabase_v1_generated_oracle_database_remove_virtual_machine_exadb_vm_cluster_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListOdbNetworks_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_RemoveVirtualMachineExadbVmCluster_sync", "segments": [ { - "end": 52, + "end": 56, "start": 27, "type": "FULL" }, { - "end": 52, + "end": 56, "start": 27, "type": "SHORT" }, @@ -7882,22 +11641,22 @@ "type": "CLIENT_INITIALIZATION" }, { - "end": 45, + "end": 46, "start": 41, "type": "REQUEST_INITIALIZATION" }, { - "end": 48, - "start": 46, + "end": 53, + "start": 47, "type": "REQUEST_EXECUTION" }, { - "end": 53, - "start": 49, + "end": 57, + "start": 54, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_odb_networks_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_remove_virtual_machine_exadb_vm_cluster_sync.py" }, { "canonical": true, @@ -7907,22 +11666,22 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_odb_subnets", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.restart_autonomous_database", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListOdbSubnets", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.RestartAutonomousDatabase", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListOdbSubnets" + "shortName": "RestartAutonomousDatabase" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListOdbSubnetsRequest" + "type": "google.cloud.oracledatabase_v1.types.RestartAutonomousDatabaseRequest" }, { - "name": "parent", + "name": "name", "type": "str" }, { @@ -7938,22 +11697,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListOdbSubnetsAsyncPager", - "shortName": "list_odb_subnets" + "resultType": "google.api_core.operation_async.AsyncOperation", + "shortName": "restart_autonomous_database" }, - "description": "Sample for ListOdbSubnets", - "file": "oracledatabase_v1_generated_oracle_database_list_odb_subnets_async.py", + "description": "Sample for RestartAutonomousDatabase", + "file": "oracledatabase_v1_generated_oracle_database_restart_autonomous_database_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListOdbSubnets_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_RestartAutonomousDatabase_async", "segments": [ { - "end": 52, + "end": 55, "start": 27, "type": "FULL" }, { - "end": 52, + "end": 55, "start": 27, "type": "SHORT" }, @@ -7968,17 +11727,17 @@ "type": "REQUEST_INITIALIZATION" }, { - "end": 48, + "end": 52, "start": 46, "type": "REQUEST_EXECUTION" }, { - "end": 53, - "start": 49, + "end": 56, + "start": 53, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_odb_subnets_async.py" + "title": "oracledatabase_v1_generated_oracle_database_restart_autonomous_database_async.py" }, { "canonical": true, @@ -7987,22 +11746,22 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_odb_subnets", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.restart_autonomous_database", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListOdbSubnets", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.RestartAutonomousDatabase", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListOdbSubnets" + "shortName": "RestartAutonomousDatabase" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListOdbSubnetsRequest" + "type": "google.cloud.oracledatabase_v1.types.RestartAutonomousDatabaseRequest" }, { - "name": "parent", + "name": "name", "type": "str" }, { @@ -8018,22 +11777,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListOdbSubnetsPager", - "shortName": "list_odb_subnets" + "resultType": "google.api_core.operation.Operation", + "shortName": "restart_autonomous_database" }, - "description": "Sample for ListOdbSubnets", - "file": "oracledatabase_v1_generated_oracle_database_list_odb_subnets_sync.py", + "description": "Sample for RestartAutonomousDatabase", + "file": "oracledatabase_v1_generated_oracle_database_restart_autonomous_database_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListOdbSubnets_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_RestartAutonomousDatabase_sync", "segments": [ { - "end": 52, + "end": 55, "start": 27, "type": "FULL" }, { - "end": 52, + "end": 55, "start": 27, "type": "SHORT" }, @@ -8048,17 +11807,17 @@ "type": "REQUEST_INITIALIZATION" }, { - "end": 48, + "end": 52, "start": 46, "type": "REQUEST_EXECUTION" }, { - "end": 53, - "start": 49, + "end": 56, + "start": 53, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_odb_subnets_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_restart_autonomous_database_sync.py" }, { "canonical": true, @@ -8068,24 +11827,28 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.list_pluggable_databases", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.restore_autonomous_database", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListPluggableDatabases", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.RestoreAutonomousDatabase", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListPluggableDatabases" + "shortName": "RestoreAutonomousDatabase" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListPluggableDatabasesRequest" + "type": "google.cloud.oracledatabase_v1.types.RestoreAutonomousDatabaseRequest" }, { - "name": "parent", + "name": "name", "type": "str" }, + { + "name": "restore_time", + "type": "google.protobuf.timestamp_pb2.Timestamp" + }, { "name": "retry", "type": "google.api_core.retry.Retry" @@ -8099,22 +11862,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListPluggableDatabasesAsyncPager", - "shortName": "list_pluggable_databases" + "resultType": "google.api_core.operation_async.AsyncOperation", + "shortName": "restore_autonomous_database" }, - "description": "Sample for ListPluggableDatabases", - "file": "oracledatabase_v1_generated_oracle_database_list_pluggable_databases_async.py", + "description": "Sample for RestoreAutonomousDatabase", + "file": "oracledatabase_v1_generated_oracle_database_restore_autonomous_database_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListPluggableDatabases_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_RestoreAutonomousDatabase_async", "segments": [ { - "end": 52, + "end": 55, "start": 27, "type": "FULL" }, { - "end": 52, + "end": 55, "start": 27, "type": "SHORT" }, @@ -8129,17 +11892,17 @@ "type": "REQUEST_INITIALIZATION" }, { - "end": 48, + "end": 52, "start": 46, "type": "REQUEST_EXECUTION" }, { - "end": 53, - "start": 49, + "end": 56, + "start": 53, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_pluggable_databases_async.py" + "title": "oracledatabase_v1_generated_oracle_database_restore_autonomous_database_async.py" }, { "canonical": true, @@ -8148,24 +11911,28 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.list_pluggable_databases", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.restore_autonomous_database", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.ListPluggableDatabases", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.RestoreAutonomousDatabase", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "ListPluggableDatabases" + "shortName": "RestoreAutonomousDatabase" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.ListPluggableDatabasesRequest" + "type": "google.cloud.oracledatabase_v1.types.RestoreAutonomousDatabaseRequest" }, { - "name": "parent", + "name": "name", "type": "str" }, + { + "name": "restore_time", + "type": "google.protobuf.timestamp_pb2.Timestamp" + }, { "name": "retry", "type": "google.api_core.retry.Retry" @@ -8179,22 +11946,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.cloud.oracledatabase_v1.services.oracle_database.pagers.ListPluggableDatabasesPager", - "shortName": "list_pluggable_databases" + "resultType": "google.api_core.operation.Operation", + "shortName": "restore_autonomous_database" }, - "description": "Sample for ListPluggableDatabases", - "file": "oracledatabase_v1_generated_oracle_database_list_pluggable_databases_sync.py", + "description": "Sample for RestoreAutonomousDatabase", + "file": "oracledatabase_v1_generated_oracle_database_restore_autonomous_database_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_ListPluggableDatabases_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_RestoreAutonomousDatabase_sync", "segments": [ { - "end": 52, + "end": 55, "start": 27, "type": "FULL" }, { - "end": 52, + "end": 55, "start": 27, "type": "SHORT" }, @@ -8209,17 +11976,17 @@ "type": "REQUEST_INITIALIZATION" }, { - "end": 48, + "end": 52, "start": 46, "type": "REQUEST_EXECUTION" }, { - "end": 53, - "start": 49, + "end": 56, + "start": 53, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_list_pluggable_databases_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_restore_autonomous_database_sync.py" }, { "canonical": true, @@ -8229,28 +11996,24 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.remove_virtual_machine_exadb_vm_cluster", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.start_autonomous_database", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.RemoveVirtualMachineExadbVmCluster", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.StartAutonomousDatabase", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "RemoveVirtualMachineExadbVmCluster" + "shortName": "StartAutonomousDatabase" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.RemoveVirtualMachineExadbVmClusterRequest" + "type": "google.cloud.oracledatabase_v1.types.StartAutonomousDatabaseRequest" }, { "name": "name", "type": "str" }, - { - "name": "hostnames", - "type": "MutableSequence[str]" - }, { "name": "retry", "type": "google.api_core.retry.Retry" @@ -8265,21 +12028,21 @@ } ], "resultType": "google.api_core.operation_async.AsyncOperation", - "shortName": "remove_virtual_machine_exadb_vm_cluster" + "shortName": "start_autonomous_database" }, - "description": "Sample for RemoveVirtualMachineExadbVmCluster", - "file": "oracledatabase_v1_generated_oracle_database_remove_virtual_machine_exadb_vm_cluster_async.py", + "description": "Sample for StartAutonomousDatabase", + "file": "oracledatabase_v1_generated_oracle_database_start_autonomous_database_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_RemoveVirtualMachineExadbVmCluster_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_StartAutonomousDatabase_async", "segments": [ { - "end": 56, + "end": 55, "start": 27, "type": "FULL" }, { - "end": 56, + "end": 55, "start": 27, "type": "SHORT" }, @@ -8289,22 +12052,22 @@ "type": "CLIENT_INITIALIZATION" }, { - "end": 46, + "end": 45, "start": 41, "type": "REQUEST_INITIALIZATION" }, { - "end": 53, - "start": 47, + "end": 52, + "start": 46, "type": "REQUEST_EXECUTION" }, { - "end": 57, - "start": 54, + "end": 56, + "start": 53, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_remove_virtual_machine_exadb_vm_cluster_async.py" + "title": "oracledatabase_v1_generated_oracle_database_start_autonomous_database_async.py" }, { "canonical": true, @@ -8313,28 +12076,24 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.remove_virtual_machine_exadb_vm_cluster", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.start_autonomous_database", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.RemoveVirtualMachineExadbVmCluster", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.StartAutonomousDatabase", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "RemoveVirtualMachineExadbVmCluster" + "shortName": "StartAutonomousDatabase" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.RemoveVirtualMachineExadbVmClusterRequest" + "type": "google.cloud.oracledatabase_v1.types.StartAutonomousDatabaseRequest" }, { "name": "name", "type": "str" }, - { - "name": "hostnames", - "type": "MutableSequence[str]" - }, { "name": "retry", "type": "google.api_core.retry.Retry" @@ -8349,21 +12108,21 @@ } ], "resultType": "google.api_core.operation.Operation", - "shortName": "remove_virtual_machine_exadb_vm_cluster" + "shortName": "start_autonomous_database" }, - "description": "Sample for RemoveVirtualMachineExadbVmCluster", - "file": "oracledatabase_v1_generated_oracle_database_remove_virtual_machine_exadb_vm_cluster_sync.py", + "description": "Sample for StartAutonomousDatabase", + "file": "oracledatabase_v1_generated_oracle_database_start_autonomous_database_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_RemoveVirtualMachineExadbVmCluster_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_StartAutonomousDatabase_sync", "segments": [ { - "end": 56, + "end": 55, "start": 27, "type": "FULL" }, { - "end": 56, + "end": 55, "start": 27, "type": "SHORT" }, @@ -8373,22 +12132,22 @@ "type": "CLIENT_INITIALIZATION" }, { - "end": 46, + "end": 45, "start": 41, "type": "REQUEST_INITIALIZATION" }, { - "end": 53, - "start": 47, + "end": 52, + "start": 46, "type": "REQUEST_EXECUTION" }, { - "end": 57, - "start": 54, + "end": 56, + "start": 53, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_remove_virtual_machine_exadb_vm_cluster_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_start_autonomous_database_sync.py" }, { "canonical": true, @@ -8398,19 +12157,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.restart_autonomous_database", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.start_goldengate_deployment", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.RestartAutonomousDatabase", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.StartGoldengateDeployment", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "RestartAutonomousDatabase" + "shortName": "StartGoldengateDeployment" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.RestartAutonomousDatabaseRequest" + "type": "google.cloud.oracledatabase_v1.types.StartGoldengateDeploymentRequest" }, { "name": "name", @@ -8430,13 +12189,13 @@ } ], "resultType": "google.api_core.operation_async.AsyncOperation", - "shortName": "restart_autonomous_database" + "shortName": "start_goldengate_deployment" }, - "description": "Sample for RestartAutonomousDatabase", - "file": "oracledatabase_v1_generated_oracle_database_restart_autonomous_database_async.py", + "description": "Sample for StartGoldengateDeployment", + "file": "oracledatabase_v1_generated_oracle_database_start_goldengate_deployment_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_RestartAutonomousDatabase_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_StartGoldengateDeployment_async", "segments": [ { "end": 55, @@ -8469,7 +12228,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_restart_autonomous_database_async.py" + "title": "oracledatabase_v1_generated_oracle_database_start_goldengate_deployment_async.py" }, { "canonical": true, @@ -8478,19 +12237,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.restart_autonomous_database", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.start_goldengate_deployment", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.RestartAutonomousDatabase", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.StartGoldengateDeployment", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "RestartAutonomousDatabase" + "shortName": "StartGoldengateDeployment" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.RestartAutonomousDatabaseRequest" + "type": "google.cloud.oracledatabase_v1.types.StartGoldengateDeploymentRequest" }, { "name": "name", @@ -8510,13 +12269,13 @@ } ], "resultType": "google.api_core.operation.Operation", - "shortName": "restart_autonomous_database" + "shortName": "start_goldengate_deployment" }, - "description": "Sample for RestartAutonomousDatabase", - "file": "oracledatabase_v1_generated_oracle_database_restart_autonomous_database_sync.py", + "description": "Sample for StartGoldengateDeployment", + "file": "oracledatabase_v1_generated_oracle_database_start_goldengate_deployment_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_RestartAutonomousDatabase_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_StartGoldengateDeployment_sync", "segments": [ { "end": 55, @@ -8549,7 +12308,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_restart_autonomous_database_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_start_goldengate_deployment_sync.py" }, { "canonical": true, @@ -8559,28 +12318,24 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.restore_autonomous_database", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.stop_autonomous_database", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.RestoreAutonomousDatabase", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.StopAutonomousDatabase", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "RestoreAutonomousDatabase" + "shortName": "StopAutonomousDatabase" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.RestoreAutonomousDatabaseRequest" + "type": "google.cloud.oracledatabase_v1.types.StopAutonomousDatabaseRequest" }, { "name": "name", "type": "str" }, - { - "name": "restore_time", - "type": "google.protobuf.timestamp_pb2.Timestamp" - }, { "name": "retry", "type": "google.api_core.retry.Retry" @@ -8595,13 +12350,13 @@ } ], "resultType": "google.api_core.operation_async.AsyncOperation", - "shortName": "restore_autonomous_database" + "shortName": "stop_autonomous_database" }, - "description": "Sample for RestoreAutonomousDatabase", - "file": "oracledatabase_v1_generated_oracle_database_restore_autonomous_database_async.py", + "description": "Sample for StopAutonomousDatabase", + "file": "oracledatabase_v1_generated_oracle_database_stop_autonomous_database_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_RestoreAutonomousDatabase_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_StopAutonomousDatabase_async", "segments": [ { "end": 55, @@ -8634,7 +12389,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_restore_autonomous_database_async.py" + "title": "oracledatabase_v1_generated_oracle_database_stop_autonomous_database_async.py" }, { "canonical": true, @@ -8643,28 +12398,24 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.restore_autonomous_database", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.stop_autonomous_database", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.RestoreAutonomousDatabase", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.StopAutonomousDatabase", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "RestoreAutonomousDatabase" + "shortName": "StopAutonomousDatabase" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.RestoreAutonomousDatabaseRequest" + "type": "google.cloud.oracledatabase_v1.types.StopAutonomousDatabaseRequest" }, { "name": "name", "type": "str" }, - { - "name": "restore_time", - "type": "google.protobuf.timestamp_pb2.Timestamp" - }, { "name": "retry", "type": "google.api_core.retry.Retry" @@ -8679,13 +12430,13 @@ } ], "resultType": "google.api_core.operation.Operation", - "shortName": "restore_autonomous_database" + "shortName": "stop_autonomous_database" }, - "description": "Sample for RestoreAutonomousDatabase", - "file": "oracledatabase_v1_generated_oracle_database_restore_autonomous_database_sync.py", + "description": "Sample for StopAutonomousDatabase", + "file": "oracledatabase_v1_generated_oracle_database_stop_autonomous_database_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_RestoreAutonomousDatabase_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_StopAutonomousDatabase_sync", "segments": [ { "end": 55, @@ -8718,7 +12469,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_restore_autonomous_database_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_stop_autonomous_database_sync.py" }, { "canonical": true, @@ -8728,19 +12479,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.start_autonomous_database", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.stop_goldengate_deployment", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.StartAutonomousDatabase", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.StopGoldengateDeployment", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "StartAutonomousDatabase" + "shortName": "StopGoldengateDeployment" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.StartAutonomousDatabaseRequest" + "type": "google.cloud.oracledatabase_v1.types.StopGoldengateDeploymentRequest" }, { "name": "name", @@ -8760,13 +12511,13 @@ } ], "resultType": "google.api_core.operation_async.AsyncOperation", - "shortName": "start_autonomous_database" + "shortName": "stop_goldengate_deployment" }, - "description": "Sample for StartAutonomousDatabase", - "file": "oracledatabase_v1_generated_oracle_database_start_autonomous_database_async.py", + "description": "Sample for StopGoldengateDeployment", + "file": "oracledatabase_v1_generated_oracle_database_stop_goldengate_deployment_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_StartAutonomousDatabase_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_StopGoldengateDeployment_async", "segments": [ { "end": 55, @@ -8799,7 +12550,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_start_autonomous_database_async.py" + "title": "oracledatabase_v1_generated_oracle_database_stop_goldengate_deployment_async.py" }, { "canonical": true, @@ -8808,19 +12559,19 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.start_autonomous_database", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.stop_goldengate_deployment", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.StartAutonomousDatabase", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.StopGoldengateDeployment", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "StartAutonomousDatabase" + "shortName": "StopGoldengateDeployment" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.StartAutonomousDatabaseRequest" + "type": "google.cloud.oracledatabase_v1.types.StopGoldengateDeploymentRequest" }, { "name": "name", @@ -8840,13 +12591,13 @@ } ], "resultType": "google.api_core.operation.Operation", - "shortName": "start_autonomous_database" + "shortName": "stop_goldengate_deployment" }, - "description": "Sample for StartAutonomousDatabase", - "file": "oracledatabase_v1_generated_oracle_database_start_autonomous_database_sync.py", + "description": "Sample for StopGoldengateDeployment", + "file": "oracledatabase_v1_generated_oracle_database_stop_goldengate_deployment_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_StartAutonomousDatabase_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_StopGoldengateDeployment_sync", "segments": [ { "end": 55, @@ -8879,7 +12630,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_start_autonomous_database_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_stop_goldengate_deployment_sync.py" }, { "canonical": true, @@ -8889,24 +12640,28 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.stop_autonomous_database", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.switchover_autonomous_database", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.StopAutonomousDatabase", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.SwitchoverAutonomousDatabase", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "StopAutonomousDatabase" + "shortName": "SwitchoverAutonomousDatabase" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.StopAutonomousDatabaseRequest" + "type": "google.cloud.oracledatabase_v1.types.SwitchoverAutonomousDatabaseRequest" }, { "name": "name", "type": "str" }, + { + "name": "peer_autonomous_database", + "type": "str" + }, { "name": "retry", "type": "google.api_core.retry.Retry" @@ -8921,13 +12676,13 @@ } ], "resultType": "google.api_core.operation_async.AsyncOperation", - "shortName": "stop_autonomous_database" + "shortName": "switchover_autonomous_database" }, - "description": "Sample for StopAutonomousDatabase", - "file": "oracledatabase_v1_generated_oracle_database_stop_autonomous_database_async.py", + "description": "Sample for SwitchoverAutonomousDatabase", + "file": "oracledatabase_v1_generated_oracle_database_switchover_autonomous_database_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_StopAutonomousDatabase_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_SwitchoverAutonomousDatabase_async", "segments": [ { "end": 55, @@ -8960,7 +12715,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_stop_autonomous_database_async.py" + "title": "oracledatabase_v1_generated_oracle_database_switchover_autonomous_database_async.py" }, { "canonical": true, @@ -8969,24 +12724,28 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.stop_autonomous_database", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.switchover_autonomous_database", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.StopAutonomousDatabase", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.SwitchoverAutonomousDatabase", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "StopAutonomousDatabase" + "shortName": "SwitchoverAutonomousDatabase" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.StopAutonomousDatabaseRequest" + "type": "google.cloud.oracledatabase_v1.types.SwitchoverAutonomousDatabaseRequest" }, { "name": "name", "type": "str" }, + { + "name": "peer_autonomous_database", + "type": "str" + }, { "name": "retry", "type": "google.api_core.retry.Retry" @@ -9001,13 +12760,13 @@ } ], "resultType": "google.api_core.operation.Operation", - "shortName": "stop_autonomous_database" + "shortName": "switchover_autonomous_database" }, - "description": "Sample for StopAutonomousDatabase", - "file": "oracledatabase_v1_generated_oracle_database_stop_autonomous_database_sync.py", + "description": "Sample for SwitchoverAutonomousDatabase", + "file": "oracledatabase_v1_generated_oracle_database_switchover_autonomous_database_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_StopAutonomousDatabase_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_SwitchoverAutonomousDatabase_sync", "segments": [ { "end": 55, @@ -9040,7 +12799,7 @@ "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_stop_autonomous_database_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_switchover_autonomous_database_sync.py" }, { "canonical": true, @@ -9050,28 +12809,24 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient", "shortName": "OracleDatabaseAsyncClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.switchover_autonomous_database", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseAsyncClient.test_goldengate_connection_assignment", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.SwitchoverAutonomousDatabase", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.TestGoldengateConnectionAssignment", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "SwitchoverAutonomousDatabase" + "shortName": "TestGoldengateConnectionAssignment" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.SwitchoverAutonomousDatabaseRequest" + "type": "google.cloud.oracledatabase_v1.types.TestGoldengateConnectionAssignmentRequest" }, { "name": "name", "type": "str" }, - { - "name": "peer_autonomous_database", - "type": "str" - }, { "name": "retry", "type": "google.api_core.retry.Retry" @@ -9085,22 +12840,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.api_core.operation_async.AsyncOperation", - "shortName": "switchover_autonomous_database" + "resultType": "google.cloud.oracledatabase_v1.types.TestGoldengateConnectionAssignmentResponse", + "shortName": "test_goldengate_connection_assignment" }, - "description": "Sample for SwitchoverAutonomousDatabase", - "file": "oracledatabase_v1_generated_oracle_database_switchover_autonomous_database_async.py", + "description": "Sample for TestGoldengateConnectionAssignment", + "file": "oracledatabase_v1_generated_oracle_database_test_goldengate_connection_assignment_async.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_SwitchoverAutonomousDatabase_async", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_TestGoldengateConnectionAssignment_async", "segments": [ { - "end": 56, + "end": 51, "start": 27, "type": "FULL" }, { - "end": 56, + "end": 51, "start": 27, "type": "SHORT" }, @@ -9110,22 +12865,22 @@ "type": "CLIENT_INITIALIZATION" }, { - "end": 46, + "end": 45, "start": 41, "type": "REQUEST_INITIALIZATION" }, { - "end": 53, - "start": 47, + "end": 48, + "start": 46, "type": "REQUEST_EXECUTION" }, { - "end": 57, - "start": 54, + "end": 52, + "start": 49, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_switchover_autonomous_database_async.py" + "title": "oracledatabase_v1_generated_oracle_database_test_goldengate_connection_assignment_async.py" }, { "canonical": true, @@ -9134,28 +12889,24 @@ "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient", "shortName": "OracleDatabaseClient" }, - "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.switchover_autonomous_database", + "fullName": "google.cloud.oracledatabase_v1.OracleDatabaseClient.test_goldengate_connection_assignment", "method": { - "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.SwitchoverAutonomousDatabase", + "fullName": "google.cloud.oracledatabase.v1.OracleDatabase.TestGoldengateConnectionAssignment", "service": { "fullName": "google.cloud.oracledatabase.v1.OracleDatabase", "shortName": "OracleDatabase" }, - "shortName": "SwitchoverAutonomousDatabase" + "shortName": "TestGoldengateConnectionAssignment" }, "parameters": [ { "name": "request", - "type": "google.cloud.oracledatabase_v1.types.SwitchoverAutonomousDatabaseRequest" + "type": "google.cloud.oracledatabase_v1.types.TestGoldengateConnectionAssignmentRequest" }, { "name": "name", "type": "str" }, - { - "name": "peer_autonomous_database", - "type": "str" - }, { "name": "retry", "type": "google.api_core.retry.Retry" @@ -9169,22 +12920,22 @@ "type": "Sequence[Tuple[str, Union[str, bytes]]]" } ], - "resultType": "google.api_core.operation.Operation", - "shortName": "switchover_autonomous_database" + "resultType": "google.cloud.oracledatabase_v1.types.TestGoldengateConnectionAssignmentResponse", + "shortName": "test_goldengate_connection_assignment" }, - "description": "Sample for SwitchoverAutonomousDatabase", - "file": "oracledatabase_v1_generated_oracle_database_switchover_autonomous_database_sync.py", + "description": "Sample for TestGoldengateConnectionAssignment", + "file": "oracledatabase_v1_generated_oracle_database_test_goldengate_connection_assignment_sync.py", "language": "PYTHON", "origin": "API_DEFINITION", - "regionTag": "oracledatabase_v1_generated_OracleDatabase_SwitchoverAutonomousDatabase_sync", + "regionTag": "oracledatabase_v1_generated_OracleDatabase_TestGoldengateConnectionAssignment_sync", "segments": [ { - "end": 56, + "end": 51, "start": 27, "type": "FULL" }, { - "end": 56, + "end": 51, "start": 27, "type": "SHORT" }, @@ -9194,22 +12945,22 @@ "type": "CLIENT_INITIALIZATION" }, { - "end": 46, + "end": 45, "start": 41, "type": "REQUEST_INITIALIZATION" }, { - "end": 53, - "start": 47, + "end": 48, + "start": 46, "type": "REQUEST_EXECUTION" }, { - "end": 57, - "start": 54, + "end": 52, + "start": 49, "type": "RESPONSE_HANDLING" } ], - "title": "oracledatabase_v1_generated_oracle_database_switchover_autonomous_database_sync.py" + "title": "oracledatabase_v1_generated_oracle_database_test_goldengate_connection_assignment_sync.py" }, { "canonical": true, diff --git a/packages/google-cloud-oracledatabase/tests/unit/gapic/oracledatabase_v1/test_oracle_database.py b/packages/google-cloud-oracledatabase/tests/unit/gapic/oracledatabase_v1/test_oracle_database.py index 22add9db76df..89060d3db7f1 100644 --- a/packages/google-cloud-oracledatabase/tests/unit/gapic/oracledatabase_v1/test_oracle_database.py +++ b/packages/google-cloud-oracledatabase/tests/unit/gapic/oracledatabase_v1/test_oracle_database.py @@ -91,6 +91,13 @@ exadb_vm_cluster, exascale_db_storage_vault, gi_version, + goldengate_connection, + goldengate_connection_assignment, + goldengate_connection_type, + goldengate_deployment, + goldengate_deployment_environment, + goldengate_deployment_type, + goldengate_deployment_version, minor_version, odb_network, odb_subnet, @@ -108,6 +115,15 @@ from google.cloud.oracledatabase_v1.types import ( exascale_db_storage_vault as gco_exascale_db_storage_vault, ) +from google.cloud.oracledatabase_v1.types import ( + goldengate_connection as gco_goldengate_connection, +) +from google.cloud.oracledatabase_v1.types import ( + goldengate_connection_assignment as gco_goldengate_connection_assignment, +) +from google.cloud.oracledatabase_v1.types import ( + goldengate_deployment as gco_goldengate_deployment, +) from google.cloud.oracledatabase_v1.types import odb_network as gco_odb_network from google.cloud.oracledatabase_v1.types import odb_subnet as gco_odb_subnet @@ -1398,6 +1414,7 @@ def test_list_cloud_exadata_infrastructures(request_type, transport: str = "grpc # Designate an appropriate return value for the call. call.return_value = oracledatabase.ListCloudExadataInfrastructuresResponse( next_page_token="next_page_token_value", + unreachable=["unreachable_value"], ) response = client.list_cloud_exadata_infrastructures(request) @@ -1410,6 +1427,7 @@ def test_list_cloud_exadata_infrastructures(request_type, transport: str = "grpc # Establish that the response is the type that we expect. assert isinstance(response, pagers.ListCloudExadataInfrastructuresPager) assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] def test_list_cloud_exadata_infrastructures_non_empty_request_with_auto_populated_field(): @@ -1559,6 +1577,7 @@ async def test_list_cloud_exadata_infrastructures_async( call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( oracledatabase.ListCloudExadataInfrastructuresResponse( next_page_token="next_page_token_value", + unreachable=["unreachable_value"], ) ) response = await client.list_cloud_exadata_infrastructures(request) @@ -1572,6 +1591,7 @@ async def test_list_cloud_exadata_infrastructures_async( # Establish that the response is the type that we expect. assert isinstance(response, pagers.ListCloudExadataInfrastructuresAsyncPager) assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] def test_list_cloud_exadata_infrastructures_field_headers(): @@ -3040,6 +3060,7 @@ def test_list_cloud_vm_clusters(request_type, transport: str = "grpc"): # Designate an appropriate return value for the call. call.return_value = oracledatabase.ListCloudVmClustersResponse( next_page_token="next_page_token_value", + unreachable=["unreachable_value"], ) response = client.list_cloud_vm_clusters(request) @@ -3052,6 +3073,7 @@ def test_list_cloud_vm_clusters(request_type, transport: str = "grpc"): # Establish that the response is the type that we expect. assert isinstance(response, pagers.ListCloudVmClustersPager) assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] def test_list_cloud_vm_clusters_non_empty_request_with_auto_populated_field(): @@ -3199,6 +3221,7 @@ async def test_list_cloud_vm_clusters_async( call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( oracledatabase.ListCloudVmClustersResponse( next_page_token="next_page_token_value", + unreachable=["unreachable_value"], ) ) response = await client.list_cloud_vm_clusters(request) @@ -3212,6 +3235,7 @@ async def test_list_cloud_vm_clusters_async( # Establish that the response is the type that we expect. assert isinstance(response, pagers.ListCloudVmClustersAsyncPager) assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] def test_list_cloud_vm_clusters_field_headers(): @@ -7870,6 +7894,7 @@ def test_list_autonomous_databases(request_type, transport: str = "grpc"): # Designate an appropriate return value for the call. call.return_value = oracledatabase.ListAutonomousDatabasesResponse( next_page_token="next_page_token_value", + unreachable=["unreachable_value"], ) response = client.list_autonomous_databases(request) @@ -7882,6 +7907,7 @@ def test_list_autonomous_databases(request_type, transport: str = "grpc"): # Establish that the response is the type that we expect. assert isinstance(response, pagers.ListAutonomousDatabasesPager) assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] def test_list_autonomous_databases_non_empty_request_with_auto_populated_field(): @@ -8031,6 +8057,7 @@ async def test_list_autonomous_databases_async( call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( oracledatabase.ListAutonomousDatabasesResponse( next_page_token="next_page_token_value", + unreachable=["unreachable_value"], ) ) response = await client.list_autonomous_databases(request) @@ -8044,6 +8071,7 @@ async def test_list_autonomous_databases_async( # Establish that the response is the type that we expect. assert isinstance(response, pagers.ListAutonomousDatabasesAsyncPager) assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] def test_list_autonomous_databases_field_headers(): @@ -8429,6 +8457,7 @@ def test_get_autonomous_database(request_type, transport: str = "grpc"): display_name="display_name_value", entitlement_id="entitlement_id_value", admin_password="admin_password_value", + admin_password_secret_version="admin_password_secret_version_value", network="network_value", cidr="cidr_value", odb_network="odb_network_value", @@ -8453,6 +8482,9 @@ def test_get_autonomous_database(request_type, transport: str = "grpc"): assert response.display_name == "display_name_value" assert response.entitlement_id == "entitlement_id_value" assert response.admin_password == "admin_password_value" + assert ( + response.admin_password_secret_version == "admin_password_secret_version_value" + ) assert response.network == "network_value" assert response.cidr == "cidr_value" assert response.odb_network == "odb_network_value" @@ -8608,6 +8640,7 @@ async def test_get_autonomous_database_async( display_name="display_name_value", entitlement_id="entitlement_id_value", admin_password="admin_password_value", + admin_password_secret_version="admin_password_secret_version_value", network="network_value", cidr="cidr_value", odb_network="odb_network_value", @@ -8633,6 +8666,9 @@ async def test_get_autonomous_database_async( assert response.display_name == "display_name_value" assert response.entitlement_id == "entitlement_id_value" assert response.admin_password == "admin_password_value" + assert ( + response.admin_password_secret_version == "admin_password_secret_version_value" + ) assert response.network == "network_value" assert response.cidr == "cidr_value" assert response.odb_network == "odb_network_value" @@ -17257,6 +17293,7 @@ def test_list_exadb_vm_clusters(request_type, transport: str = "grpc"): # Designate an appropriate return value for the call. call.return_value = oracledatabase.ListExadbVmClustersResponse( next_page_token="next_page_token_value", + unreachable=["unreachable_value"], ) response = client.list_exadb_vm_clusters(request) @@ -17269,6 +17306,7 @@ def test_list_exadb_vm_clusters(request_type, transport: str = "grpc"): # Establish that the response is the type that we expect. assert isinstance(response, pagers.ListExadbVmClustersPager) assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] def test_list_exadb_vm_clusters_non_empty_request_with_auto_populated_field(): @@ -17418,6 +17456,7 @@ async def test_list_exadb_vm_clusters_async( call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( oracledatabase.ListExadbVmClustersResponse( next_page_token="next_page_token_value", + unreachable=["unreachable_value"], ) ) response = await client.list_exadb_vm_clusters(request) @@ -17431,6 +17470,7 @@ async def test_list_exadb_vm_clusters_async( # Establish that the response is the type that we expect. assert isinstance(response, pagers.ListExadbVmClustersAsyncPager) assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] def test_list_exadb_vm_clusters_field_headers(): @@ -19609,6 +19649,7 @@ def test_list_exascale_db_storage_vaults(request_type, transport: str = "grpc"): call.return_value = ( exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse( next_page_token="next_page_token_value", + unreachable=["unreachable_value"], ) ) response = client.list_exascale_db_storage_vaults(request) @@ -19622,6 +19663,7 @@ def test_list_exascale_db_storage_vaults(request_type, transport: str = "grpc"): # Establish that the response is the type that we expect. assert isinstance(response, pagers.ListExascaleDbStorageVaultsPager) assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] def test_list_exascale_db_storage_vaults_non_empty_request_with_auto_populated_field(): @@ -19771,6 +19813,7 @@ async def test_list_exascale_db_storage_vaults_async( call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse( next_page_token="next_page_token_value", + unreachable=["unreachable_value"], ) ) response = await client.list_exascale_db_storage_vaults(request) @@ -19784,6 +19827,7 @@ async def test_list_exascale_db_storage_vaults_async( # Establish that the response is the type that we expect. assert isinstance(response, pagers.ListExascaleDbStorageVaultsAsyncPager) assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] def test_list_exascale_db_storage_vaults_field_headers(): @@ -22352,7 +22396,9 @@ def test_get_database(request_type, transport: str = "grpc"): db_name="db_name_value", db_unique_name="db_unique_name_value", admin_password="admin_password_value", + admin_password_secret_version="admin_password_secret_version_value", tde_wallet_password="tde_wallet_password_value", + tde_wallet_password_secret_version="tde_wallet_password_secret_version_value", character_set="character_set_value", ncharacter_set="ncharacter_set_value", oci_url="oci_url_value", @@ -22360,6 +22406,8 @@ def test_get_database(request_type, transport: str = "grpc"): db_home_name="db_home_name_value", gcp_oracle_zone="gcp_oracle_zone_value", ops_insights_status=database.Database.OperationsInsightsStatus.ENABLING, + pluggable_database_id="pluggable_database_id_value", + pluggable_database_name="pluggable_database_name_value", ) response = client.get_database(request) @@ -22375,7 +22423,14 @@ def test_get_database(request_type, transport: str = "grpc"): assert response.db_name == "db_name_value" assert response.db_unique_name == "db_unique_name_value" assert response.admin_password == "admin_password_value" + assert ( + response.admin_password_secret_version == "admin_password_secret_version_value" + ) assert response.tde_wallet_password == "tde_wallet_password_value" + assert ( + response.tde_wallet_password_secret_version + == "tde_wallet_password_secret_version_value" + ) assert response.character_set == "character_set_value" assert response.ncharacter_set == "ncharacter_set_value" assert response.oci_url == "oci_url_value" @@ -22386,6 +22441,8 @@ def test_get_database(request_type, transport: str = "grpc"): response.ops_insights_status == database.Database.OperationsInsightsStatus.ENABLING ) + assert response.pluggable_database_id == "pluggable_database_id_value" + assert response.pluggable_database_name == "pluggable_database_name_value" def test_get_database_non_empty_request_with_auto_populated_field(): @@ -22521,7 +22578,9 @@ async def test_get_database_async(request_type, transport: str = "grpc_asyncio") db_name="db_name_value", db_unique_name="db_unique_name_value", admin_password="admin_password_value", + admin_password_secret_version="admin_password_secret_version_value", tde_wallet_password="tde_wallet_password_value", + tde_wallet_password_secret_version="tde_wallet_password_secret_version_value", character_set="character_set_value", ncharacter_set="ncharacter_set_value", oci_url="oci_url_value", @@ -22529,6 +22588,8 @@ async def test_get_database_async(request_type, transport: str = "grpc_asyncio") db_home_name="db_home_name_value", gcp_oracle_zone="gcp_oracle_zone_value", ops_insights_status=database.Database.OperationsInsightsStatus.ENABLING, + pluggable_database_id="pluggable_database_id_value", + pluggable_database_name="pluggable_database_name_value", ) ) response = await client.get_database(request) @@ -22545,7 +22606,14 @@ async def test_get_database_async(request_type, transport: str = "grpc_asyncio") assert response.db_name == "db_name_value" assert response.db_unique_name == "db_unique_name_value" assert response.admin_password == "admin_password_value" + assert ( + response.admin_password_secret_version == "admin_password_secret_version_value" + ) assert response.tde_wallet_password == "tde_wallet_password_value" + assert ( + response.tde_wallet_password_secret_version + == "tde_wallet_password_secret_version_value" + ) assert response.character_set == "character_set_value" assert response.ncharacter_set == "ncharacter_set_value" assert response.oci_url == "oci_url_value" @@ -22556,6 +22624,8 @@ async def test_get_database_async(request_type, transport: str = "grpc_asyncio") response.ops_insights_status == database.Database.OperationsInsightsStatus.ENABLING ) + assert response.pluggable_database_id == "pluggable_database_id_value" + assert response.pluggable_database_name == "pluggable_database_name_value" def test_get_database_field_headers(): @@ -23619,6 +23689,7 @@ def test_list_db_systems(request_type, transport: str = "grpc"): # Designate an appropriate return value for the call. call.return_value = db_system.ListDbSystemsResponse( next_page_token="next_page_token_value", + unreachable=["unreachable_value"], ) response = client.list_db_systems(request) @@ -23631,6 +23702,7 @@ def test_list_db_systems(request_type, transport: str = "grpc"): # Establish that the response is the type that we expect. assert isinstance(response, pagers.ListDbSystemsPager) assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] def test_list_db_systems_non_empty_request_with_auto_populated_field(): @@ -23769,6 +23841,7 @@ async def test_list_db_systems_async(request_type, transport: str = "grpc_asynci call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( db_system.ListDbSystemsResponse( next_page_token="next_page_token_value", + unreachable=["unreachable_value"], ) ) response = await client.list_db_systems(request) @@ -23782,6 +23855,7 @@ async def test_list_db_systems_async(request_type, transport: str = "grpc_asynci # Establish that the response is the type that we expect. assert isinstance(response, pagers.ListDbSystemsAsyncPager) assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] def test_list_db_systems_field_headers(): @@ -25146,11 +25220,11 @@ async def test_delete_db_system_flattened_error_async(): @pytest.mark.parametrize( "request_type", [ - db_version.ListDbVersionsRequest(), + goldengate_deployment.ListGoldengateDeploymentsRequest(), {}, ], ) -def test_list_db_versions(request_type, transport: str = "grpc"): +def test_list_goldengate_deployments(request_type, transport: str = "grpc"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -25161,25 +25235,29 @@ def test_list_db_versions(request_type, transport: str = "grpc"): request = request_type # Mock the actual call within the gRPC stub, and fake the request. - with mock.patch.object(type(client.transport.list_db_versions), "__call__") as call: + with mock.patch.object( + type(client.transport.list_goldengate_deployments), "__call__" + ) as call: # Designate an appropriate return value for the call. - call.return_value = db_version.ListDbVersionsResponse( + call.return_value = goldengate_deployment.ListGoldengateDeploymentsResponse( next_page_token="next_page_token_value", + unreachable=["unreachable_value"], ) - response = client.list_db_versions(request) + response = client.list_goldengate_deployments(request) # Establish that the underlying gRPC stub method was called. assert len(call.mock_calls) == 1 _, args, _ = call.mock_calls[0] - request = db_version.ListDbVersionsRequest() + request = goldengate_deployment.ListGoldengateDeploymentsRequest() assert args[0] == request # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListDbVersionsPager) + assert isinstance(response, pagers.ListGoldengateDeploymentsPager) assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] -def test_list_db_versions_non_empty_request_with_auto_populated_field(): +def test_list_goldengate_deployments_non_empty_request_with_auto_populated_field(): # This test is a coverage failsafe to make sure that UUID4 fields are # automatically populated, according to AIP-4235, with non-empty requests. client = OracleDatabaseClient( @@ -25190,29 +25268,33 @@ def test_list_db_versions_non_empty_request_with_auto_populated_field(): # Populate all string fields in the request which are not UUID4 # since we want to check that UUID4 are populated automatically # if they meet the requirements of AIP 4235. - request = db_version.ListDbVersionsRequest( + request = goldengate_deployment.ListGoldengateDeploymentsRequest( parent="parent_value", page_token="page_token_value", filter="filter_value", + order_by="order_by_value", ) # Mock the actual call within the gRPC stub, and fake the request. - with mock.patch.object(type(client.transport.list_db_versions), "__call__") as call: + with mock.patch.object( + type(client.transport.list_goldengate_deployments), "__call__" + ) as call: call.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client.list_db_versions(request=request) + client.list_goldengate_deployments(request=request) call.assert_called() _, args, _ = call.mock_calls[0] - request_msg = db_version.ListDbVersionsRequest( + request_msg = goldengate_deployment.ListGoldengateDeploymentsRequest( parent="parent_value", page_token="page_token_value", filter="filter_value", + order_by="order_by_value", ) assert args[0] == request_msg -def test_list_db_versions_use_cached_wrapped_rpc(): +def test_list_goldengate_deployments_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -25226,23 +25308,26 @@ def test_list_db_versions_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert client._transport.list_db_versions in client._transport._wrapped_methods + assert ( + client._transport.list_goldengate_deployments + in client._transport._wrapped_methods + ) # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.list_db_versions] = ( - mock_rpc - ) + client._transport._wrapped_methods[ + client._transport.list_goldengate_deployments + ] = mock_rpc request = {} - client.list_db_versions(request) + client.list_goldengate_deployments(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_db_versions(request) + client.list_goldengate_deployments(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 @@ -25250,7 +25335,7 @@ def test_list_db_versions_use_cached_wrapped_rpc(): @pytest.mark.asyncio -async def test_list_db_versions_async_use_cached_wrapped_rpc( +async def test_list_goldengate_deployments_async_use_cached_wrapped_rpc( transport: str = "grpc_asyncio", ): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, @@ -25267,7 +25352,7 @@ async def test_list_db_versions_async_use_cached_wrapped_rpc( # Ensure method has been cached assert ( - client._client._transport.list_db_versions + client._client._transport.list_goldengate_deployments in client._client._transport._wrapped_methods ) @@ -25275,16 +25360,16 @@ async def test_list_db_versions_async_use_cached_wrapped_rpc( mock_rpc = mock.AsyncMock() mock_rpc.return_value = mock.Mock() client._client._transport._wrapped_methods[ - client._client._transport.list_db_versions + client._client._transport.list_goldengate_deployments ] = mock_rpc request = {} - await client.list_db_versions(request) + await client.list_goldengate_deployments(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - await client.list_db_versions(request) + await client.list_goldengate_deployments(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 @@ -25295,11 +25380,13 @@ async def test_list_db_versions_async_use_cached_wrapped_rpc( @pytest.mark.parametrize( "request_type", [ - db_version.ListDbVersionsRequest(), + goldengate_deployment.ListGoldengateDeploymentsRequest(), {}, ], ) -async def test_list_db_versions_async(request_type, transport: str = "grpc_asyncio"): +async def test_list_goldengate_deployments_async( + request_type, transport: str = "grpc_asyncio" +): client = OracleDatabaseAsyncClient( credentials=async_anonymous_credentials(), transport=transport, @@ -25310,41 +25397,47 @@ async def test_list_db_versions_async(request_type, transport: str = "grpc_async request = request_type # Mock the actual call within the gRPC stub, and fake the request. - with mock.patch.object(type(client.transport.list_db_versions), "__call__") as call: + with mock.patch.object( + type(client.transport.list_goldengate_deployments), "__call__" + ) as call: # Designate an appropriate return value for the call. call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - db_version.ListDbVersionsResponse( + goldengate_deployment.ListGoldengateDeploymentsResponse( next_page_token="next_page_token_value", + unreachable=["unreachable_value"], ) ) - response = await client.list_db_versions(request) + response = await client.list_goldengate_deployments(request) # Establish that the underlying gRPC stub method was called. assert len(call.mock_calls) _, args, _ = call.mock_calls[0] - request = db_version.ListDbVersionsRequest() + request = goldengate_deployment.ListGoldengateDeploymentsRequest() assert args[0] == request # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListDbVersionsAsyncPager) + assert isinstance(response, pagers.ListGoldengateDeploymentsAsyncPager) assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] -def test_list_db_versions_field_headers(): +def test_list_goldengate_deployments_field_headers(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), ) # Any value that is part of the HTTP/1.1 URI should be sent as # a field header. Set these to a non-empty value. - request = db_version.ListDbVersionsRequest() + request = goldengate_deployment.ListGoldengateDeploymentsRequest() request.parent = "parent_value" # Mock the actual call within the gRPC stub, and fake the request. - with mock.patch.object(type(client.transport.list_db_versions), "__call__") as call: - call.return_value = db_version.ListDbVersionsResponse() - client.list_db_versions(request) + with mock.patch.object( + type(client.transport.list_goldengate_deployments), "__call__" + ) as call: + call.return_value = goldengate_deployment.ListGoldengateDeploymentsResponse() + client.list_goldengate_deployments(request) # Establish that the underlying gRPC stub method was called. assert len(call.mock_calls) == 1 @@ -25360,23 +25453,25 @@ def test_list_db_versions_field_headers(): @pytest.mark.asyncio -async def test_list_db_versions_field_headers_async(): +async def test_list_goldengate_deployments_field_headers_async(): client = OracleDatabaseAsyncClient( credentials=async_anonymous_credentials(), ) # Any value that is part of the HTTP/1.1 URI should be sent as # a field header. Set these to a non-empty value. - request = db_version.ListDbVersionsRequest() + request = goldengate_deployment.ListGoldengateDeploymentsRequest() request.parent = "parent_value" # Mock the actual call within the gRPC stub, and fake the request. - with mock.patch.object(type(client.transport.list_db_versions), "__call__") as call: + with mock.patch.object( + type(client.transport.list_goldengate_deployments), "__call__" + ) as call: call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - db_version.ListDbVersionsResponse() + goldengate_deployment.ListGoldengateDeploymentsResponse() ) - await client.list_db_versions(request) + await client.list_goldengate_deployments(request) # Establish that the underlying gRPC stub method was called. assert len(call.mock_calls) @@ -25391,18 +25486,20 @@ async def test_list_db_versions_field_headers_async(): ) in kw["metadata"] -def test_list_db_versions_flattened(): +def test_list_goldengate_deployments_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), ) # Mock the actual call within the gRPC stub, and fake the request. - with mock.patch.object(type(client.transport.list_db_versions), "__call__") as call: + with mock.patch.object( + type(client.transport.list_goldengate_deployments), "__call__" + ) as call: # Designate an appropriate return value for the call. - call.return_value = db_version.ListDbVersionsResponse() + call.return_value = goldengate_deployment.ListGoldengateDeploymentsResponse() # Call the method with a truthy value for each flattened field, # using the keyword arguments to the method. - client.list_db_versions( + client.list_goldengate_deployments( parent="parent_value", ) @@ -25415,7 +25512,7 @@ def test_list_db_versions_flattened(): assert arg == mock_val -def test_list_db_versions_flattened_error(): +def test_list_goldengate_deployments_flattened_error(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), ) @@ -25423,29 +25520,31 @@ def test_list_db_versions_flattened_error(): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.list_db_versions( - db_version.ListDbVersionsRequest(), + client.list_goldengate_deployments( + goldengate_deployment.ListGoldengateDeploymentsRequest(), parent="parent_value", ) @pytest.mark.asyncio -async def test_list_db_versions_flattened_async(): +async def test_list_goldengate_deployments_flattened_async(): client = OracleDatabaseAsyncClient( credentials=async_anonymous_credentials(), ) # Mock the actual call within the gRPC stub, and fake the request. - with mock.patch.object(type(client.transport.list_db_versions), "__call__") as call: + with mock.patch.object( + type(client.transport.list_goldengate_deployments), "__call__" + ) as call: # Designate an appropriate return value for the call. - call.return_value = db_version.ListDbVersionsResponse() + call.return_value = goldengate_deployment.ListGoldengateDeploymentsResponse() call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - db_version.ListDbVersionsResponse() + goldengate_deployment.ListGoldengateDeploymentsResponse() ) # Call the method with a truthy value for each flattened field, # using the keyword arguments to the method. - response = await client.list_db_versions( + response = await client.list_goldengate_deployments( parent="parent_value", ) @@ -25459,7 +25558,7 @@ async def test_list_db_versions_flattened_async(): @pytest.mark.asyncio -async def test_list_db_versions_flattened_error_async(): +async def test_list_goldengate_deployments_flattened_error_async(): client = OracleDatabaseAsyncClient( credentials=async_anonymous_credentials(), ) @@ -25467,44 +25566,46 @@ async def test_list_db_versions_flattened_error_async(): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - await client.list_db_versions( - db_version.ListDbVersionsRequest(), + await client.list_goldengate_deployments( + goldengate_deployment.ListGoldengateDeploymentsRequest(), parent="parent_value", ) -def test_list_db_versions_pager(transport_name: str = "grpc"): +def test_list_goldengate_deployments_pager(transport_name: str = "grpc"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport_name, ) # Mock the actual call within the gRPC stub, and fake the request. - with mock.patch.object(type(client.transport.list_db_versions), "__call__") as call: + with mock.patch.object( + type(client.transport.list_goldengate_deployments), "__call__" + ) as call: # Set the response to a series of pages. call.side_effect = ( - db_version.ListDbVersionsResponse( - db_versions=[ - db_version.DbVersion(), - db_version.DbVersion(), - db_version.DbVersion(), + goldengate_deployment.ListGoldengateDeploymentsResponse( + goldengate_deployments=[ + goldengate_deployment.GoldengateDeployment(), + goldengate_deployment.GoldengateDeployment(), + goldengate_deployment.GoldengateDeployment(), ], next_page_token="abc", ), - db_version.ListDbVersionsResponse( - db_versions=[], + goldengate_deployment.ListGoldengateDeploymentsResponse( + goldengate_deployments=[], next_page_token="def", ), - db_version.ListDbVersionsResponse( - db_versions=[ - db_version.DbVersion(), + goldengate_deployment.ListGoldengateDeploymentsResponse( + goldengate_deployments=[ + goldengate_deployment.GoldengateDeployment(), ], next_page_token="ghi", ), - db_version.ListDbVersionsResponse( - db_versions=[ - db_version.DbVersion(), - db_version.DbVersion(), + goldengate_deployment.ListGoldengateDeploymentsResponse( + goldengate_deployments=[ + goldengate_deployment.GoldengateDeployment(), + goldengate_deployment.GoldengateDeployment(), ], ), RuntimeError, @@ -25516,7 +25617,9 @@ def test_list_db_versions_pager(transport_name: str = "grpc"): expected_metadata = tuple(expected_metadata) + ( gapic_v1.routing_header.to_grpc_metadata((("parent", ""),)), ) - pager = client.list_db_versions(request={}, retry=retry, timeout=timeout) + pager = client.list_goldengate_deployments( + request={}, retry=retry, timeout=timeout + ) assert pager._metadata == expected_metadata assert pager._retry == retry @@ -25524,89 +25627,95 @@ def test_list_db_versions_pager(transport_name: str = "grpc"): results = list(pager) assert len(results) == 6 - assert all(isinstance(i, db_version.DbVersion) for i in results) + assert all( + isinstance(i, goldengate_deployment.GoldengateDeployment) for i in results + ) -def test_list_db_versions_pages(transport_name: str = "grpc"): +def test_list_goldengate_deployments_pages(transport_name: str = "grpc"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport_name, ) # Mock the actual call within the gRPC stub, and fake the request. - with mock.patch.object(type(client.transport.list_db_versions), "__call__") as call: + with mock.patch.object( + type(client.transport.list_goldengate_deployments), "__call__" + ) as call: # Set the response to a series of pages. call.side_effect = ( - db_version.ListDbVersionsResponse( - db_versions=[ - db_version.DbVersion(), - db_version.DbVersion(), - db_version.DbVersion(), + goldengate_deployment.ListGoldengateDeploymentsResponse( + goldengate_deployments=[ + goldengate_deployment.GoldengateDeployment(), + goldengate_deployment.GoldengateDeployment(), + goldengate_deployment.GoldengateDeployment(), ], next_page_token="abc", ), - db_version.ListDbVersionsResponse( - db_versions=[], + goldengate_deployment.ListGoldengateDeploymentsResponse( + goldengate_deployments=[], next_page_token="def", ), - db_version.ListDbVersionsResponse( - db_versions=[ - db_version.DbVersion(), + goldengate_deployment.ListGoldengateDeploymentsResponse( + goldengate_deployments=[ + goldengate_deployment.GoldengateDeployment(), ], next_page_token="ghi", ), - db_version.ListDbVersionsResponse( - db_versions=[ - db_version.DbVersion(), - db_version.DbVersion(), + goldengate_deployment.ListGoldengateDeploymentsResponse( + goldengate_deployments=[ + goldengate_deployment.GoldengateDeployment(), + goldengate_deployment.GoldengateDeployment(), ], ), RuntimeError, ) - pages = list(client.list_db_versions(request={}).pages) + pages = list(client.list_goldengate_deployments(request={}).pages) for page_, token in zip(pages, ["abc", "def", "ghi", ""]): assert page_.raw_page.next_page_token == token @pytest.mark.asyncio -async def test_list_db_versions_async_pager(): +async def test_list_goldengate_deployments_async_pager(): client = OracleDatabaseAsyncClient( credentials=async_anonymous_credentials(), ) # Mock the actual call within the gRPC stub, and fake the request. with mock.patch.object( - type(client.transport.list_db_versions), "__call__", new_callable=mock.AsyncMock + type(client.transport.list_goldengate_deployments), + "__call__", + new_callable=mock.AsyncMock, ) as call: # Set the response to a series of pages. call.side_effect = ( - db_version.ListDbVersionsResponse( - db_versions=[ - db_version.DbVersion(), - db_version.DbVersion(), - db_version.DbVersion(), + goldengate_deployment.ListGoldengateDeploymentsResponse( + goldengate_deployments=[ + goldengate_deployment.GoldengateDeployment(), + goldengate_deployment.GoldengateDeployment(), + goldengate_deployment.GoldengateDeployment(), ], next_page_token="abc", ), - db_version.ListDbVersionsResponse( - db_versions=[], + goldengate_deployment.ListGoldengateDeploymentsResponse( + goldengate_deployments=[], next_page_token="def", ), - db_version.ListDbVersionsResponse( - db_versions=[ - db_version.DbVersion(), + goldengate_deployment.ListGoldengateDeploymentsResponse( + goldengate_deployments=[ + goldengate_deployment.GoldengateDeployment(), ], next_page_token="ghi", ), - db_version.ListDbVersionsResponse( - db_versions=[ - db_version.DbVersion(), - db_version.DbVersion(), + goldengate_deployment.ListGoldengateDeploymentsResponse( + goldengate_deployments=[ + goldengate_deployment.GoldengateDeployment(), + goldengate_deployment.GoldengateDeployment(), ], ), RuntimeError, ) - async_pager = await client.list_db_versions( + async_pager = await client.list_goldengate_deployments( request={}, ) assert async_pager.next_page_token == "abc" @@ -25615,49 +25724,53 @@ async def test_list_db_versions_async_pager(): responses.append(response) assert len(responses) == 6 - assert all(isinstance(i, db_version.DbVersion) for i in responses) + assert all( + isinstance(i, goldengate_deployment.GoldengateDeployment) for i in responses + ) @pytest.mark.asyncio -async def test_list_db_versions_async_pages(): +async def test_list_goldengate_deployments_async_pages(): client = OracleDatabaseAsyncClient( credentials=async_anonymous_credentials(), ) # Mock the actual call within the gRPC stub, and fake the request. with mock.patch.object( - type(client.transport.list_db_versions), "__call__", new_callable=mock.AsyncMock + type(client.transport.list_goldengate_deployments), + "__call__", + new_callable=mock.AsyncMock, ) as call: # Set the response to a series of pages. call.side_effect = ( - db_version.ListDbVersionsResponse( - db_versions=[ - db_version.DbVersion(), - db_version.DbVersion(), - db_version.DbVersion(), + goldengate_deployment.ListGoldengateDeploymentsResponse( + goldengate_deployments=[ + goldengate_deployment.GoldengateDeployment(), + goldengate_deployment.GoldengateDeployment(), + goldengate_deployment.GoldengateDeployment(), ], next_page_token="abc", ), - db_version.ListDbVersionsResponse( - db_versions=[], + goldengate_deployment.ListGoldengateDeploymentsResponse( + goldengate_deployments=[], next_page_token="def", ), - db_version.ListDbVersionsResponse( - db_versions=[ - db_version.DbVersion(), + goldengate_deployment.ListGoldengateDeploymentsResponse( + goldengate_deployments=[ + goldengate_deployment.GoldengateDeployment(), ], next_page_token="ghi", ), - db_version.ListDbVersionsResponse( - db_versions=[ - db_version.DbVersion(), - db_version.DbVersion(), + goldengate_deployment.ListGoldengateDeploymentsResponse( + goldengate_deployments=[ + goldengate_deployment.GoldengateDeployment(), + goldengate_deployment.GoldengateDeployment(), ], ), RuntimeError, ) pages = [] - async for page_ in (await client.list_db_versions(request={})).pages: + async for page_ in (await client.list_goldengate_deployments(request={})).pages: pages.append(page_) for page_, token in zip(pages, ["abc", "def", "ghi", ""]): assert page_.raw_page.next_page_token == token @@ -25666,11 +25779,11 @@ async def test_list_db_versions_async_pages(): @pytest.mark.parametrize( "request_type", [ - database_character_set.ListDatabaseCharacterSetsRequest(), + goldengate_deployment.GetGoldengateDeploymentRequest(), {}, ], ) -def test_list_database_character_sets(request_type, transport: str = "grpc"): +def test_get_goldengate_deployment(request_type, transport: str = "grpc"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -25682,26 +25795,38 @@ def test_list_database_character_sets(request_type, transport: str = "grpc"): # Mock the actual call within the gRPC stub, and fake the request. with mock.patch.object( - type(client.transport.list_database_character_sets), "__call__" + type(client.transport.get_goldengate_deployment), "__call__" ) as call: # Designate an appropriate return value for the call. - call.return_value = database_character_set.ListDatabaseCharacterSetsResponse( - next_page_token="next_page_token_value", + call.return_value = goldengate_deployment.GoldengateDeployment( + name="name_value", + gcp_oracle_zone="gcp_oracle_zone_value", + odb_network="odb_network_value", + odb_subnet="odb_subnet_value", + entitlement_id="entitlement_id_value", + display_name="display_name_value", + oci_url="oci_url_value", ) - response = client.list_database_character_sets(request) + response = client.get_goldengate_deployment(request) # Establish that the underlying gRPC stub method was called. assert len(call.mock_calls) == 1 _, args, _ = call.mock_calls[0] - request = database_character_set.ListDatabaseCharacterSetsRequest() + request = goldengate_deployment.GetGoldengateDeploymentRequest() assert args[0] == request # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListDatabaseCharacterSetsPager) - assert response.next_page_token == "next_page_token_value" + assert isinstance(response, goldengate_deployment.GoldengateDeployment) + assert response.name == "name_value" + assert response.gcp_oracle_zone == "gcp_oracle_zone_value" + assert response.odb_network == "odb_network_value" + assert response.odb_subnet == "odb_subnet_value" + assert response.entitlement_id == "entitlement_id_value" + assert response.display_name == "display_name_value" + assert response.oci_url == "oci_url_value" -def test_list_database_character_sets_non_empty_request_with_auto_populated_field(): +def test_get_goldengate_deployment_non_empty_request_with_auto_populated_field(): # This test is a coverage failsafe to make sure that UUID4 fields are # automatically populated, according to AIP-4235, with non-empty requests. client = OracleDatabaseClient( @@ -25712,31 +25837,27 @@ def test_list_database_character_sets_non_empty_request_with_auto_populated_fiel # Populate all string fields in the request which are not UUID4 # since we want to check that UUID4 are populated automatically # if they meet the requirements of AIP 4235. - request = database_character_set.ListDatabaseCharacterSetsRequest( - parent="parent_value", - page_token="page_token_value", - filter="filter_value", + request = goldengate_deployment.GetGoldengateDeploymentRequest( + name="name_value", ) # Mock the actual call within the gRPC stub, and fake the request. with mock.patch.object( - type(client.transport.list_database_character_sets), "__call__" + type(client.transport.get_goldengate_deployment), "__call__" ) as call: call.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client.list_database_character_sets(request=request) + client.get_goldengate_deployment(request=request) call.assert_called() _, args, _ = call.mock_calls[0] - request_msg = database_character_set.ListDatabaseCharacterSetsRequest( - parent="parent_value", - page_token="page_token_value", - filter="filter_value", + request_msg = goldengate_deployment.GetGoldengateDeploymentRequest( + name="name_value", ) assert args[0] == request_msg -def test_list_database_character_sets_use_cached_wrapped_rpc(): +def test_get_goldengate_deployment_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -25751,7 +25872,7 @@ def test_list_database_character_sets_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.list_database_character_sets + client._transport.get_goldengate_deployment in client._transport._wrapped_methods ) @@ -25761,15 +25882,15 @@ def test_list_database_character_sets_use_cached_wrapped_rpc(): "foo" # operation_request.operation in compute client(s) expect a string. ) client._transport._wrapped_methods[ - client._transport.list_database_character_sets + client._transport.get_goldengate_deployment ] = mock_rpc request = {} - client.list_database_character_sets(request) + client.get_goldengate_deployment(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_database_character_sets(request) + client.get_goldengate_deployment(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 @@ -25777,7 +25898,7 @@ def test_list_database_character_sets_use_cached_wrapped_rpc(): @pytest.mark.asyncio -async def test_list_database_character_sets_async_use_cached_wrapped_rpc( +async def test_get_goldengate_deployment_async_use_cached_wrapped_rpc( transport: str = "grpc_asyncio", ): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, @@ -25794,7 +25915,7 @@ async def test_list_database_character_sets_async_use_cached_wrapped_rpc( # Ensure method has been cached assert ( - client._client._transport.list_database_character_sets + client._client._transport.get_goldengate_deployment in client._client._transport._wrapped_methods ) @@ -25802,16 +25923,16 @@ async def test_list_database_character_sets_async_use_cached_wrapped_rpc( mock_rpc = mock.AsyncMock() mock_rpc.return_value = mock.Mock() client._client._transport._wrapped_methods[ - client._client._transport.list_database_character_sets + client._client._transport.get_goldengate_deployment ] = mock_rpc request = {} - await client.list_database_character_sets(request) + await client.get_goldengate_deployment(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - await client.list_database_character_sets(request) + await client.get_goldengate_deployment(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 @@ -25822,11 +25943,11 @@ async def test_list_database_character_sets_async_use_cached_wrapped_rpc( @pytest.mark.parametrize( "request_type", [ - database_character_set.ListDatabaseCharacterSetsRequest(), + goldengate_deployment.GetGoldengateDeploymentRequest(), {}, ], ) -async def test_list_database_character_sets_async( +async def test_get_goldengate_deployment_async( request_type, transport: str = "grpc_asyncio" ): client = OracleDatabaseAsyncClient( @@ -25840,44 +25961,56 @@ async def test_list_database_character_sets_async( # Mock the actual call within the gRPC stub, and fake the request. with mock.patch.object( - type(client.transport.list_database_character_sets), "__call__" + type(client.transport.get_goldengate_deployment), "__call__" ) as call: # Designate an appropriate return value for the call. call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - database_character_set.ListDatabaseCharacterSetsResponse( - next_page_token="next_page_token_value", + goldengate_deployment.GoldengateDeployment( + name="name_value", + gcp_oracle_zone="gcp_oracle_zone_value", + odb_network="odb_network_value", + odb_subnet="odb_subnet_value", + entitlement_id="entitlement_id_value", + display_name="display_name_value", + oci_url="oci_url_value", ) ) - response = await client.list_database_character_sets(request) + response = await client.get_goldengate_deployment(request) # Establish that the underlying gRPC stub method was called. assert len(call.mock_calls) _, args, _ = call.mock_calls[0] - request = database_character_set.ListDatabaseCharacterSetsRequest() + request = goldengate_deployment.GetGoldengateDeploymentRequest() assert args[0] == request # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListDatabaseCharacterSetsAsyncPager) - assert response.next_page_token == "next_page_token_value" + assert isinstance(response, goldengate_deployment.GoldengateDeployment) + assert response.name == "name_value" + assert response.gcp_oracle_zone == "gcp_oracle_zone_value" + assert response.odb_network == "odb_network_value" + assert response.odb_subnet == "odb_subnet_value" + assert response.entitlement_id == "entitlement_id_value" + assert response.display_name == "display_name_value" + assert response.oci_url == "oci_url_value" -def test_list_database_character_sets_field_headers(): +def test_get_goldengate_deployment_field_headers(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), ) # Any value that is part of the HTTP/1.1 URI should be sent as # a field header. Set these to a non-empty value. - request = database_character_set.ListDatabaseCharacterSetsRequest() + request = goldengate_deployment.GetGoldengateDeploymentRequest() - request.parent = "parent_value" + request.name = "name_value" # Mock the actual call within the gRPC stub, and fake the request. with mock.patch.object( - type(client.transport.list_database_character_sets), "__call__" + type(client.transport.get_goldengate_deployment), "__call__" ) as call: - call.return_value = database_character_set.ListDatabaseCharacterSetsResponse() - client.list_database_character_sets(request) + call.return_value = goldengate_deployment.GoldengateDeployment() + client.get_goldengate_deployment(request) # Establish that the underlying gRPC stub method was called. assert len(call.mock_calls) == 1 @@ -25888,30 +26021,30 @@ def test_list_database_character_sets_field_headers(): _, _, kw = call.mock_calls[0] assert ( "x-goog-request-params", - "parent=parent_value", + "name=name_value", ) in kw["metadata"] @pytest.mark.asyncio -async def test_list_database_character_sets_field_headers_async(): +async def test_get_goldengate_deployment_field_headers_async(): client = OracleDatabaseAsyncClient( credentials=async_anonymous_credentials(), ) # Any value that is part of the HTTP/1.1 URI should be sent as # a field header. Set these to a non-empty value. - request = database_character_set.ListDatabaseCharacterSetsRequest() + request = goldengate_deployment.GetGoldengateDeploymentRequest() - request.parent = "parent_value" + request.name = "name_value" # Mock the actual call within the gRPC stub, and fake the request. with mock.patch.object( - type(client.transport.list_database_character_sets), "__call__" + type(client.transport.get_goldengate_deployment), "__call__" ) as call: call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - database_character_set.ListDatabaseCharacterSetsResponse() + goldengate_deployment.GoldengateDeployment() ) - await client.list_database_character_sets(request) + await client.get_goldengate_deployment(request) # Establish that the underlying gRPC stub method was called. assert len(call.mock_calls) @@ -25922,37 +26055,37 @@ async def test_list_database_character_sets_field_headers_async(): _, _, kw = call.mock_calls[0] assert ( "x-goog-request-params", - "parent=parent_value", + "name=name_value", ) in kw["metadata"] -def test_list_database_character_sets_flattened(): +def test_get_goldengate_deployment_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), ) # Mock the actual call within the gRPC stub, and fake the request. with mock.patch.object( - type(client.transport.list_database_character_sets), "__call__" + type(client.transport.get_goldengate_deployment), "__call__" ) as call: # Designate an appropriate return value for the call. - call.return_value = database_character_set.ListDatabaseCharacterSetsResponse() + call.return_value = goldengate_deployment.GoldengateDeployment() # Call the method with a truthy value for each flattened field, # using the keyword arguments to the method. - client.list_database_character_sets( - parent="parent_value", + client.get_goldengate_deployment( + name="name_value", ) # Establish that the underlying call was made with the expected # request object values. assert len(call.mock_calls) == 1 _, args, _ = call.mock_calls[0] - arg = args[0].parent - mock_val = "parent_value" + arg = args[0].name + mock_val = "name_value" assert arg == mock_val -def test_list_database_character_sets_flattened_error(): +def test_get_goldengate_deployment_flattened_error(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), ) @@ -25960,45 +26093,45 @@ def test_list_database_character_sets_flattened_error(): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.list_database_character_sets( - database_character_set.ListDatabaseCharacterSetsRequest(), - parent="parent_value", + client.get_goldengate_deployment( + goldengate_deployment.GetGoldengateDeploymentRequest(), + name="name_value", ) @pytest.mark.asyncio -async def test_list_database_character_sets_flattened_async(): +async def test_get_goldengate_deployment_flattened_async(): client = OracleDatabaseAsyncClient( credentials=async_anonymous_credentials(), ) # Mock the actual call within the gRPC stub, and fake the request. with mock.patch.object( - type(client.transport.list_database_character_sets), "__call__" + type(client.transport.get_goldengate_deployment), "__call__" ) as call: # Designate an appropriate return value for the call. - call.return_value = database_character_set.ListDatabaseCharacterSetsResponse() + call.return_value = goldengate_deployment.GoldengateDeployment() call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - database_character_set.ListDatabaseCharacterSetsResponse() + goldengate_deployment.GoldengateDeployment() ) # Call the method with a truthy value for each flattened field, # using the keyword arguments to the method. - response = await client.list_database_character_sets( - parent="parent_value", + response = await client.get_goldengate_deployment( + name="name_value", ) # Establish that the underlying call was made with the expected # request object values. assert len(call.mock_calls) _, args, _ = call.mock_calls[0] - arg = args[0].parent - mock_val = "parent_value" + arg = args[0].name + mock_val = "name_value" assert arg == mock_val @pytest.mark.asyncio -async def test_list_database_character_sets_flattened_error_async(): +async def test_get_goldengate_deployment_flattened_error_async(): client = OracleDatabaseAsyncClient( credentials=async_anonymous_credentials(), ) @@ -26006,226 +26139,135 @@ async def test_list_database_character_sets_flattened_error_async(): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - await client.list_database_character_sets( - database_character_set.ListDatabaseCharacterSetsRequest(), - parent="parent_value", + await client.get_goldengate_deployment( + goldengate_deployment.GetGoldengateDeploymentRequest(), + name="name_value", ) -def test_list_database_character_sets_pager(transport_name: str = "grpc"): +@pytest.mark.parametrize( + "request_type", + [ + gco_goldengate_deployment.CreateGoldengateDeploymentRequest(), + {}, + ], +) +def test_create_goldengate_deployment(request_type, transport: str = "grpc"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport=transport_name, + transport=transport, ) + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + # Mock the actual call within the gRPC stub, and fake the request. with mock.patch.object( - type(client.transport.list_database_character_sets), "__call__" + type(client.transport.create_goldengate_deployment), "__call__" ) as call: - # Set the response to a series of pages. - call.side_effect = ( - database_character_set.ListDatabaseCharacterSetsResponse( - database_character_sets=[ - database_character_set.DatabaseCharacterSet(), - database_character_set.DatabaseCharacterSet(), - database_character_set.DatabaseCharacterSet(), - ], - next_page_token="abc", - ), - database_character_set.ListDatabaseCharacterSetsResponse( - database_character_sets=[], - next_page_token="def", - ), - database_character_set.ListDatabaseCharacterSetsResponse( - database_character_sets=[ - database_character_set.DatabaseCharacterSet(), - ], - next_page_token="ghi", - ), - database_character_set.ListDatabaseCharacterSetsResponse( - database_character_sets=[ - database_character_set.DatabaseCharacterSet(), - database_character_set.DatabaseCharacterSet(), - ], - ), - RuntimeError, - ) - - expected_metadata = () - retry = retries.Retry() - timeout = 5 - expected_metadata = tuple(expected_metadata) + ( - gapic_v1.routing_header.to_grpc_metadata((("parent", ""),)), - ) - pager = client.list_database_character_sets( - request={}, retry=retry, timeout=timeout - ) + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/spam") + response = client.create_goldengate_deployment(request) - assert pager._metadata == expected_metadata - assert pager._retry == retry - assert pager._timeout == timeout + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + request = gco_goldengate_deployment.CreateGoldengateDeploymentRequest() + assert args[0] == request - results = list(pager) - assert len(results) == 6 - assert all( - isinstance(i, database_character_set.DatabaseCharacterSet) for i in results - ) + # Establish that the response is the type that we expect. + assert isinstance(response, future.Future) -def test_list_database_character_sets_pages(transport_name: str = "grpc"): +def test_create_goldengate_deployment_non_empty_request_with_auto_populated_field(): + # This test is a coverage failsafe to make sure that UUID4 fields are + # automatically populated, according to AIP-4235, with non-empty requests. client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport=transport_name, + transport="grpc", ) - # Mock the actual call within the gRPC stub, and fake the request. - with mock.patch.object( - type(client.transport.list_database_character_sets), "__call__" - ) as call: - # Set the response to a series of pages. - call.side_effect = ( - database_character_set.ListDatabaseCharacterSetsResponse( - database_character_sets=[ - database_character_set.DatabaseCharacterSet(), - database_character_set.DatabaseCharacterSet(), - database_character_set.DatabaseCharacterSet(), - ], - next_page_token="abc", - ), - database_character_set.ListDatabaseCharacterSetsResponse( - database_character_sets=[], - next_page_token="def", - ), - database_character_set.ListDatabaseCharacterSetsResponse( - database_character_sets=[ - database_character_set.DatabaseCharacterSet(), - ], - next_page_token="ghi", - ), - database_character_set.ListDatabaseCharacterSetsResponse( - database_character_sets=[ - database_character_set.DatabaseCharacterSet(), - database_character_set.DatabaseCharacterSet(), - ], - ), - RuntimeError, - ) - pages = list(client.list_database_character_sets(request={}).pages) - for page_, token in zip(pages, ["abc", "def", "ghi", ""]): - assert page_.raw_page.next_page_token == token - - -@pytest.mark.asyncio -async def test_list_database_character_sets_async_pager(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), + # Populate all string fields in the request which are not UUID4 + # since we want to check that UUID4 are populated automatically + # if they meet the requirements of AIP 4235. + request = gco_goldengate_deployment.CreateGoldengateDeploymentRequest( + parent="parent_value", + goldengate_deployment_id="goldengate_deployment_id_value", ) # Mock the actual call within the gRPC stub, and fake the request. with mock.patch.object( - type(client.transport.list_database_character_sets), - "__call__", - new_callable=mock.AsyncMock, + type(client.transport.create_goldengate_deployment), "__call__" ) as call: - # Set the response to a series of pages. - call.side_effect = ( - database_character_set.ListDatabaseCharacterSetsResponse( - database_character_sets=[ - database_character_set.DatabaseCharacterSet(), - database_character_set.DatabaseCharacterSet(), - database_character_set.DatabaseCharacterSet(), - ], - next_page_token="abc", - ), - database_character_set.ListDatabaseCharacterSetsResponse( - database_character_sets=[], - next_page_token="def", - ), - database_character_set.ListDatabaseCharacterSetsResponse( - database_character_sets=[ - database_character_set.DatabaseCharacterSet(), - ], - next_page_token="ghi", - ), - database_character_set.ListDatabaseCharacterSetsResponse( - database_character_sets=[ - database_character_set.DatabaseCharacterSet(), - database_character_set.DatabaseCharacterSet(), - ], - ), - RuntimeError, + call.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. ) - async_pager = await client.list_database_character_sets( - request={}, + client.create_goldengate_deployment(request=request) + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = gco_goldengate_deployment.CreateGoldengateDeploymentRequest( + parent="parent_value", + goldengate_deployment_id="goldengate_deployment_id_value", ) - assert async_pager.next_page_token == "abc" - responses = [] - async for response in async_pager: # pragma: no branch - responses.append(response) + assert args[0] == request_msg - assert len(responses) == 6 - assert all( - isinstance(i, database_character_set.DatabaseCharacterSet) - for i in responses + +def test_create_goldengate_deployment_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", ) + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() -@pytest.mark.asyncio -async def test_list_database_character_sets_async_pages(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - ) + # Ensure method has been cached + assert ( + client._transport.create_goldengate_deployment + in client._transport._wrapped_methods + ) - # Mock the actual call within the gRPC stub, and fake the request. - with mock.patch.object( - type(client.transport.list_database_character_sets), - "__call__", - new_callable=mock.AsyncMock, - ) as call: - # Set the response to a series of pages. - call.side_effect = ( - database_character_set.ListDatabaseCharacterSetsResponse( - database_character_sets=[ - database_character_set.DatabaseCharacterSet(), - database_character_set.DatabaseCharacterSet(), - database_character_set.DatabaseCharacterSet(), - ], - next_page_token="abc", - ), - database_character_set.ListDatabaseCharacterSetsResponse( - database_character_sets=[], - next_page_token="def", - ), - database_character_set.ListDatabaseCharacterSetsResponse( - database_character_sets=[ - database_character_set.DatabaseCharacterSet(), - ], - next_page_token="ghi", - ), - database_character_set.ListDatabaseCharacterSetsResponse( - database_character_sets=[ - database_character_set.DatabaseCharacterSet(), - database_character_set.DatabaseCharacterSet(), - ], - ), - RuntimeError, + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. ) - pages = [] - async for page_ in ( - await client.list_database_character_sets(request={}) - ).pages: - pages.append(page_) - for page_, token in zip(pages, ["abc", "def", "ghi", ""]): - assert page_.raw_page.next_page_token == token + client._transport._wrapped_methods[ + client._transport.create_goldengate_deployment + ] = mock_rpc + request = {} + client.create_goldengate_deployment(request) + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 -def test_list_cloud_exadata_infrastructures_rest_use_cached_wrapped_rpc(): + # Operation methods call wrapper_fn to build a cached + # client._transport.operations_client instance on first rpc call. + # Subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.create_goldengate_deployment(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +@pytest.mark.asyncio +async def test_create_goldengate_deployment_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", +): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call - with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, ) # Should wrap all calls on client creation @@ -26234,276 +26276,327 @@ def test_list_cloud_exadata_infrastructures_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.list_cloud_exadata_infrastructures - in client._transport._wrapped_methods + client._client._transport.create_goldengate_deployment + in client._client._transport._wrapped_methods ) # Replace cached wrapped function with mock - mock_rpc = mock.Mock() - mock_rpc.return_value.name = ( - "foo" # operation_request.operation in compute client(s) expect a string. - ) - client._transport._wrapped_methods[ - client._transport.list_cloud_exadata_infrastructures + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.create_goldengate_deployment ] = mock_rpc request = {} - client.list_cloud_exadata_infrastructures(request) + await client.create_goldengate_deployment(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_cloud_exadata_infrastructures(request) + # Operation methods call wrapper_fn to build a cached + # client._transport.operations_client instance on first rpc call. + # Subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + await client.create_goldengate_deployment(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_list_cloud_exadata_infrastructures_rest_required_fields( - request_type=oracledatabase.ListCloudExadataInfrastructuresRequest, +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + gco_goldengate_deployment.CreateGoldengateDeploymentRequest(), + {}, + ], +) +async def test_create_goldengate_deployment_async( + request_type, transport: str = "grpc_asyncio" ): - transport_class = transports.OracleDatabaseRestTransport - - request_init = {} - request_init["parent"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, ) - # verify fields with default values are dropped - - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).list_cloud_exadata_infrastructures._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type - # verify required fields with default values are now present + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_deployment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + response = await client.create_goldengate_deployment(request) - jsonified_request["parent"] = "parent_value" + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + request = gco_goldengate_deployment.CreateGoldengateDeploymentRequest() + assert args[0] == request - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).list_cloud_exadata_infrastructures._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "filter", - "order_by", - "page_size", - "page_token", - ) - ) - jsonified_request.update(unset_fields) + # Establish that the response is the type that we expect. + assert isinstance(response, future.Future) - # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" +def test_create_goldengate_deployment_field_headers(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - request = request_type(**request_init) - - # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListCloudExadataInfrastructuresResponse() - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "get", - "query_params": pb_request, - } - transcode.return_value = transcode_result - response_value = Response() - response_value.status_code = 200 + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = gco_goldengate_deployment.CreateGoldengateDeploymentRequest() - # Convert return value to protobuf type - return_value = oracledatabase.ListCloudExadataInfrastructuresResponse.pb( - return_value - ) - json_return_value = json_format.MessageToJson(return_value) + request.parent = "parent_value" - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_deployment), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.create_goldengate_deployment(request) - response = client.list_cloud_exadata_infrastructures(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert args[0] == request - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "parent=parent_value", + ) in kw["metadata"] -def test_list_cloud_exadata_infrastructures_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials +@pytest.mark.asyncio +async def test_create_goldengate_deployment_field_headers_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - unset_fields = ( - transport.list_cloud_exadata_infrastructures._get_unset_required_fields({}) - ) - assert set(unset_fields) == ( - set( - ( - "filter", - "orderBy", - "pageSize", - "pageToken", - ) + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = gco_goldengate_deployment.CreateGoldengateDeploymentRequest() + + request.parent = "parent_value" + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_deployment), "__call__" + ) as call: + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/op") ) - & set(("parent",)) - ) + await client.create_goldengate_deployment(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert args[0] == request -def test_list_cloud_exadata_infrastructures_rest_flattened(): + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "parent=parent_value", + ) in kw["metadata"] + + +def test_create_goldengate_deployment_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListCloudExadataInfrastructuresResponse() + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_deployment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/op") + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + client.create_goldengate_deployment( + parent="parent_value", + goldengate_deployment=gco_goldengate_deployment.GoldengateDeployment( + name="name_value" + ), + goldengate_deployment_id="goldengate_deployment_id_value", + ) - # get arguments that satisfy an http rule for this method - sample_request = {"parent": "projects/sample1/locations/sample2"} + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + arg = args[0].parent + mock_val = "parent_value" + assert arg == mock_val + arg = args[0].goldengate_deployment + mock_val = gco_goldengate_deployment.GoldengateDeployment(name="name_value") + assert arg == mock_val + arg = args[0].goldengate_deployment_id + mock_val = "goldengate_deployment_id_value" + assert arg == mock_val - # get truthy value for each flattened field - mock_args = dict( + +def test_create_goldengate_deployment_flattened_error(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.create_goldengate_deployment( + gco_goldengate_deployment.CreateGoldengateDeploymentRequest(), parent="parent_value", + goldengate_deployment=gco_goldengate_deployment.GoldengateDeployment( + name="name_value" + ), + goldengate_deployment_id="goldengate_deployment_id_value", ) - mock_args.update(sample_request) - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - # Convert return value to protobuf type - return_value = oracledatabase.ListCloudExadataInfrastructuresResponse.pb( - return_value - ) - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_cloud_exadata_infrastructures(**mock_args) +@pytest.mark.asyncio +async def test_create_goldengate_deployment_flattened_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_deployment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/op") + + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + response = await client.create_goldengate_deployment( + parent="parent_value", + goldengate_deployment=gco_goldengate_deployment.GoldengateDeployment( + name="name_value" + ), + goldengate_deployment_id="goldengate_deployment_id_value", + ) # Establish that the underlying call was made with the expected # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*}/cloudExadataInfrastructures" - % client.transport._host, - args[1], - ) + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + arg = args[0].parent + mock_val = "parent_value" + assert arg == mock_val + arg = args[0].goldengate_deployment + mock_val = gco_goldengate_deployment.GoldengateDeployment(name="name_value") + assert arg == mock_val + arg = args[0].goldengate_deployment_id + mock_val = "goldengate_deployment_id_value" + assert arg == mock_val -def test_list_cloud_exadata_infrastructures_rest_flattened_error( - transport: str = "rest", -): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, +@pytest.mark.asyncio +async def test_create_goldengate_deployment_flattened_error_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.list_cloud_exadata_infrastructures( - oracledatabase.ListCloudExadataInfrastructuresRequest(), + await client.create_goldengate_deployment( + gco_goldengate_deployment.CreateGoldengateDeploymentRequest(), parent="parent_value", + goldengate_deployment=gco_goldengate_deployment.GoldengateDeployment( + name="name_value" + ), + goldengate_deployment_id="goldengate_deployment_id_value", ) -def test_list_cloud_exadata_infrastructures_rest_pager(transport: str = "rest"): +@pytest.mark.parametrize( + "request_type", + [ + goldengate_deployment.DeleteGoldengateDeploymentRequest(), + {}, + ], +) +def test_delete_goldengate_deployment(request_type, transport: str = "grpc"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # TODO(kbandes): remove this mock unless there's a good reason for it. - # with mock.patch.object(path_template, 'transcode') as transcode: - # Set the response as a series of pages - response = ( - oracledatabase.ListCloudExadataInfrastructuresResponse( - cloud_exadata_infrastructures=[ - exadata_infra.CloudExadataInfrastructure(), - exadata_infra.CloudExadataInfrastructure(), - exadata_infra.CloudExadataInfrastructure(), - ], - next_page_token="abc", - ), - oracledatabase.ListCloudExadataInfrastructuresResponse( - cloud_exadata_infrastructures=[], - next_page_token="def", - ), - oracledatabase.ListCloudExadataInfrastructuresResponse( - cloud_exadata_infrastructures=[ - exadata_infra.CloudExadataInfrastructure(), - ], - next_page_token="ghi", - ), - oracledatabase.ListCloudExadataInfrastructuresResponse( - cloud_exadata_infrastructures=[ - exadata_infra.CloudExadataInfrastructure(), - exadata_infra.CloudExadataInfrastructure(), - ], - ), - ) - # Two responses for two calls - response = response + response + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type - # Wrap the values into proper Response objs - response = tuple( - oracledatabase.ListCloudExadataInfrastructuresResponse.to_json(x) - for x in response - ) - return_values = tuple(Response() for i in response) - for return_val, response_val in zip(return_values, response): - return_val._content = response_val.encode("UTF-8") - return_val.status_code = 200 - req.side_effect = return_values + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_deployment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/spam") + response = client.delete_goldengate_deployment(request) - sample_request = {"parent": "projects/sample1/locations/sample2"} + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + request = goldengate_deployment.DeleteGoldengateDeploymentRequest() + assert args[0] == request - pager = client.list_cloud_exadata_infrastructures(request=sample_request) + # Establish that the response is the type that we expect. + assert isinstance(response, future.Future) - results = list(pager) - assert len(results) == 6 - assert all( - isinstance(i, exadata_infra.CloudExadataInfrastructure) for i in results - ) - pages = list( - client.list_cloud_exadata_infrastructures(request=sample_request).pages +def test_delete_goldengate_deployment_non_empty_request_with_auto_populated_field(): + # This test is a coverage failsafe to make sure that UUID4 fields are + # automatically populated, according to AIP-4235, with non-empty requests. + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Populate all string fields in the request which are not UUID4 + # since we want to check that UUID4 are populated automatically + # if they meet the requirements of AIP 4235. + request = goldengate_deployment.DeleteGoldengateDeploymentRequest( + name="name_value", + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_deployment), "__call__" + ) as call: + call.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. ) - for page_, token in zip(pages, ["abc", "def", "ghi", ""]): - assert page_.raw_page.next_page_token == token + client.delete_goldengate_deployment(request=request) + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment.DeleteGoldengateDeploymentRequest( + name="name_value", + ) + assert args[0] == request_msg -def test_get_cloud_exadata_infrastructure_rest_use_cached_wrapped_rpc(): +def test_delete_goldengate_deployment_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport="grpc", ) # Should wrap all calls on client creation @@ -26512,7 +26605,7 @@ def test_get_cloud_exadata_infrastructure_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.get_cloud_exadata_infrastructure + client._transport.delete_goldengate_deployment in client._transport._wrapped_methods ) @@ -26522,412 +26615,337 @@ def test_get_cloud_exadata_infrastructure_rest_use_cached_wrapped_rpc(): "foo" # operation_request.operation in compute client(s) expect a string. ) client._transport._wrapped_methods[ - client._transport.get_cloud_exadata_infrastructure + client._transport.delete_goldengate_deployment ] = mock_rpc - request = {} - client.get_cloud_exadata_infrastructure(request) + client.delete_goldengate_deployment(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.get_cloud_exadata_infrastructure(request) + # Operation methods call wrapper_fn to build a cached + # client._transport.operations_client instance on first rpc call. + # Subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.delete_goldengate_deployment(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_get_cloud_exadata_infrastructure_rest_required_fields( - request_type=oracledatabase.GetCloudExadataInfrastructureRequest, +@pytest.mark.asyncio +async def test_delete_goldengate_deployment_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", ): - transport_class = transports.OracleDatabaseRestTransport - - request_init = {} - request_init["name"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) - ) + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) - # verify fields with default values are dropped + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).get_cloud_exadata_infrastructure._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + # Ensure method has been cached + assert ( + client._client._transport.delete_goldengate_deployment + in client._client._transport._wrapped_methods + ) - # verify required fields with default values are now present + # Replace cached wrapped function with mock + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.delete_goldengate_deployment + ] = mock_rpc - jsonified_request["name"] = "name_value" + request = {} + await client.delete_goldengate_deployment(request) - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).get_cloud_exadata_infrastructure._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 - # verify required fields with non-default values are left alone - assert "name" in jsonified_request - assert jsonified_request["name"] == "name_value" + # Operation methods call wrapper_fn to build a cached + # client._transport.operations_client instance on first rpc call. + # Subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", - ) - request = request_type(**request_init) + await client.delete_goldengate_deployment(request) - # Designate an appropriate value for the returned response. - return_value = exadata_infra.CloudExadataInfrastructure() - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "get", - "query_params": pb_request, - } - transcode.return_value = transcode_result - - response_value = Response() - response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = exadata_infra.CloudExadataInfrastructure.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_cloud_exadata_infrastructure(request) +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + goldengate_deployment.DeleteGoldengateDeploymentRequest(), + {}, + ], +) +async def test_delete_goldengate_deployment_async( + request_type, transport: str = "grpc_asyncio" +): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_deployment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + response = await client.delete_goldengate_deployment(request) -def test_get_cloud_exadata_infrastructure_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials - ) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + request = goldengate_deployment.DeleteGoldengateDeploymentRequest() + assert args[0] == request - unset_fields = ( - transport.get_cloud_exadata_infrastructure._get_unset_required_fields({}) - ) - assert set(unset_fields) == (set(()) & set(("name",))) + # Establish that the response is the type that we expect. + assert isinstance(response, future.Future) -def test_get_cloud_exadata_infrastructure_rest_flattened(): +def test_delete_goldengate_deployment_field_headers(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = exadata_infra.CloudExadataInfrastructure() - - # get arguments that satisfy an http rule for this method - sample_request = { - "name": "projects/sample1/locations/sample2/cloudExadataInfrastructures/sample3" - } + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = goldengate_deployment.DeleteGoldengateDeploymentRequest() - # get truthy value for each flattened field - mock_args = dict( - name="name_value", - ) - mock_args.update(sample_request) + request.name = "name_value" - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - # Convert return value to protobuf type - return_value = exadata_infra.CloudExadataInfrastructure.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_deployment), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.delete_goldengate_deployment(request) - client.get_cloud_exadata_infrastructure(**mock_args) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert args[0] == request - # Establish that the underlying call was made with the expected - # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{name=projects/*/locations/*/cloudExadataInfrastructures/*}" - % client.transport._host, - args[1], - ) + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "name=name_value", + ) in kw["metadata"] -def test_get_cloud_exadata_infrastructure_rest_flattened_error(transport: str = "rest"): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, +@pytest.mark.asyncio +async def test_delete_goldengate_deployment_field_headers_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - # Attempting to call a method with both a request object and flattened - # fields is an error. - with pytest.raises(ValueError): - client.get_cloud_exadata_infrastructure( - oracledatabase.GetCloudExadataInfrastructureRequest(), - name="name_value", - ) - - -def test_create_cloud_exadata_infrastructure_rest_use_cached_wrapped_rpc(): - # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, - # instead of constructing them on each call - with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", - ) - - # Should wrap all calls on client creation - assert wrapper_fn.call_count > 0 - wrapper_fn.reset_mock() + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = goldengate_deployment.DeleteGoldengateDeploymentRequest() - # Ensure method has been cached - assert ( - client._transport.create_cloud_exadata_infrastructure - in client._transport._wrapped_methods - ) + request.name = "name_value" - # Replace cached wrapped function with mock - mock_rpc = mock.Mock() - mock_rpc.return_value.name = ( - "foo" # operation_request.operation in compute client(s) expect a string. + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_deployment), "__call__" + ) as call: + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/op") ) - client._transport._wrapped_methods[ - client._transport.create_cloud_exadata_infrastructure - ] = mock_rpc - - request = {} - client.create_cloud_exadata_infrastructure(request) + await client.delete_goldengate_deployment(request) # Establish that the underlying gRPC stub method was called. - assert mock_rpc.call_count == 1 - - # Operation methods build a cached wrapper on first rpc call - # subsequent calls should use the cached wrapper - wrapper_fn.reset_mock() - - client.create_cloud_exadata_infrastructure(request) - - # Establish that a new wrapper was not created for this call - assert wrapper_fn.call_count == 0 - assert mock_rpc.call_count == 2 + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert args[0] == request + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "name=name_value", + ) in kw["metadata"] -def test_create_cloud_exadata_infrastructure_rest_required_fields( - request_type=oracledatabase.CreateCloudExadataInfrastructureRequest, -): - transport_class = transports.OracleDatabaseRestTransport - request_init = {} - request_init["parent"] = "" - request_init["cloud_exadata_infrastructure_id"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) +def test_delete_goldengate_deployment_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), ) - # verify fields with default values are dropped - assert "cloudExadataInfrastructureId" not in jsonified_request + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_deployment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/op") + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + client.delete_goldengate_deployment( + name="name_value", + ) - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).create_cloud_exadata_infrastructure._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + arg = args[0].name + mock_val = "name_value" + assert arg == mock_val - # verify required fields with default values are now present - assert "cloudExadataInfrastructureId" in jsonified_request - assert ( - jsonified_request["cloudExadataInfrastructureId"] - == request_init["cloud_exadata_infrastructure_id"] - ) - jsonified_request["parent"] = "parent_value" - jsonified_request["cloudExadataInfrastructureId"] = ( - "cloud_exadata_infrastructure_id_value" +def test_delete_goldengate_deployment_flattened_error(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), ) - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).create_cloud_exadata_infrastructure._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "cloud_exadata_infrastructure_id", - "request_id", + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.delete_goldengate_deployment( + goldengate_deployment.DeleteGoldengateDeploymentRequest(), + name="name_value", ) - ) - jsonified_request.update(unset_fields) - # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" - assert "cloudExadataInfrastructureId" in jsonified_request - assert ( - jsonified_request["cloudExadataInfrastructureId"] - == "cloud_exadata_infrastructure_id_value" - ) - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", +@pytest.mark.asyncio +async def test_delete_goldengate_deployment_flattened_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - request = request_type(**request_init) - - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "post", - "query_params": pb_request, - } - transcode_result["body"] = pb_request - transcode.return_value = transcode_result - - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_deployment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/op") - response = client.create_cloud_exadata_infrastructure(request) + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + response = await client.delete_goldengate_deployment( + name="name_value", + ) - expected_params = [ - ( - "cloudExadataInfrastructureId", - "", - ), - ("$alt", "json;enum-encoding=int"), - ] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + arg = args[0].name + mock_val = "name_value" + assert arg == mock_val -def test_create_cloud_exadata_infrastructure_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials +@pytest.mark.asyncio +async def test_delete_goldengate_deployment_flattened_error_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - unset_fields = ( - transport.create_cloud_exadata_infrastructure._get_unset_required_fields({}) - ) - assert set(unset_fields) == ( - set( - ( - "cloudExadataInfrastructureId", - "requestId", - ) - ) - & set( - ( - "parent", - "cloudExadataInfrastructureId", - "cloudExadataInfrastructure", - ) + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + await client.delete_goldengate_deployment( + goldengate_deployment.DeleteGoldengateDeploymentRequest(), + name="name_value", ) - ) -def test_create_cloud_exadata_infrastructure_rest_flattened(): +@pytest.mark.parametrize( + "request_type", + [ + goldengate_deployment.StopGoldengateDeploymentRequest(), + {}, + ], +) +def test_stop_goldengate_deployment(request_type, transport: str = "grpc"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport=transport, ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - - # get arguments that satisfy an http rule for this method - sample_request = {"parent": "projects/sample1/locations/sample2"} - - # get truthy value for each flattened field - mock_args = dict( - parent="parent_value", - cloud_exadata_infrastructure=exadata_infra.CloudExadataInfrastructure( - name="name_value" - ), - cloud_exadata_infrastructure_id="cloud_exadata_infrastructure_id_value", - ) - mock_args.update(sample_request) + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.stop_goldengate_deployment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/spam") + response = client.stop_goldengate_deployment(request) - client.create_cloud_exadata_infrastructure(**mock_args) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + request = goldengate_deployment.StopGoldengateDeploymentRequest() + assert args[0] == request - # Establish that the underlying call was made with the expected - # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*}/cloudExadataInfrastructures" - % client.transport._host, - args[1], - ) + # Establish that the response is the type that we expect. + assert isinstance(response, future.Future) -def test_create_cloud_exadata_infrastructure_rest_flattened_error( - transport: str = "rest", -): +def test_stop_goldengate_deployment_non_empty_request_with_auto_populated_field(): + # This test is a coverage failsafe to make sure that UUID4 fields are + # automatically populated, according to AIP-4235, with non-empty requests. client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport=transport, + transport="grpc", ) - # Attempting to call a method with both a request object and flattened - # fields is an error. - with pytest.raises(ValueError): - client.create_cloud_exadata_infrastructure( - oracledatabase.CreateCloudExadataInfrastructureRequest(), - parent="parent_value", - cloud_exadata_infrastructure=exadata_infra.CloudExadataInfrastructure( - name="name_value" - ), - cloud_exadata_infrastructure_id="cloud_exadata_infrastructure_id_value", + # Populate all string fields in the request which are not UUID4 + # since we want to check that UUID4 are populated automatically + # if they meet the requirements of AIP 4235. + request = goldengate_deployment.StopGoldengateDeploymentRequest( + name="name_value", + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.stop_goldengate_deployment), "__call__" + ) as call: + call.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client.stop_goldengate_deployment(request=request) + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment.StopGoldengateDeploymentRequest( + name="name_value", ) + assert args[0] == request_msg -def test_delete_cloud_exadata_infrastructure_rest_use_cached_wrapped_rpc(): +def test_stop_goldengate_deployment_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport="grpc", ) # Should wrap all calls on client creation @@ -26936,7 +26954,7 @@ def test_delete_cloud_exadata_infrastructure_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.delete_cloud_exadata_infrastructure + client._transport.stop_goldengate_deployment in client._transport._wrapped_methods ) @@ -26946,191 +26964,337 @@ def test_delete_cloud_exadata_infrastructure_rest_use_cached_wrapped_rpc(): "foo" # operation_request.operation in compute client(s) expect a string. ) client._transport._wrapped_methods[ - client._transport.delete_cloud_exadata_infrastructure + client._transport.stop_goldengate_deployment ] = mock_rpc - request = {} - client.delete_cloud_exadata_infrastructure(request) + client.stop_goldengate_deployment(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - # Operation methods build a cached wrapper on first rpc call - # subsequent calls should use the cached wrapper + # Operation methods call wrapper_fn to build a cached + # client._transport.operations_client instance on first rpc call. + # Subsequent calls should use the cached wrapper wrapper_fn.reset_mock() - client.delete_cloud_exadata_infrastructure(request) + client.stop_goldengate_deployment(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_delete_cloud_exadata_infrastructure_rest_required_fields( - request_type=oracledatabase.DeleteCloudExadataInfrastructureRequest, +@pytest.mark.asyncio +async def test_stop_goldengate_deployment_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", ): - transport_class = transports.OracleDatabaseRestTransport + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) - request_init = {} - request_init["name"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) - ) + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() - # verify fields with default values are dropped + # Ensure method has been cached + assert ( + client._client._transport.stop_goldengate_deployment + in client._client._transport._wrapped_methods + ) - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).delete_cloud_exadata_infrastructure._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + # Replace cached wrapped function with mock + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.stop_goldengate_deployment + ] = mock_rpc - # verify required fields with default values are now present + request = {} + await client.stop_goldengate_deployment(request) - jsonified_request["name"] = "name_value" + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).delete_cloud_exadata_infrastructure._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "force", - "request_id", - ) - ) - jsonified_request.update(unset_fields) + # Operation methods call wrapper_fn to build a cached + # client._transport.operations_client instance on first rpc call. + # Subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() - # verify required fields with non-default values are left alone - assert "name" in jsonified_request - assert jsonified_request["name"] == "name_value" + await client.stop_goldengate_deployment(request) + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + goldengate_deployment.StopGoldengateDeploymentRequest(), + {}, + ], +) +async def test_stop_goldengate_deployment_async( + request_type, transport: str = "grpc_asyncio" +): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) + + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.stop_goldengate_deployment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + response = await client.stop_goldengate_deployment(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + request = goldengate_deployment.StopGoldengateDeploymentRequest() + assert args[0] == request + + # Establish that the response is the type that we expect. + assert isinstance(response, future.Future) + + +def test_stop_goldengate_deployment_field_headers(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - request = request_type(**request_init) - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "delete", - "query_params": pb_request, - } - transcode.return_value = transcode_result + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = goldengate_deployment.StopGoldengateDeploymentRequest() - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) + request.name = "name_value" - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.stop_goldengate_deployment), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.stop_goldengate_deployment(request) - response = client.delete_cloud_exadata_infrastructure(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert args[0] == request - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "name=name_value", + ) in kw["metadata"] -def test_delete_cloud_exadata_infrastructure_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials +@pytest.mark.asyncio +async def test_stop_goldengate_deployment_field_headers_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - unset_fields = ( - transport.delete_cloud_exadata_infrastructure._get_unset_required_fields({}) - ) - assert set(unset_fields) == ( - set( - ( - "force", - "requestId", - ) + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = goldengate_deployment.StopGoldengateDeploymentRequest() + + request.name = "name_value" + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.stop_goldengate_deployment), "__call__" + ) as call: + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/op") ) - & set(("name",)) - ) + await client.stop_goldengate_deployment(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert args[0] == request -def test_delete_cloud_exadata_infrastructure_rest_flattened(): + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "name=name_value", + ) in kw["metadata"] + + +def test_stop_goldengate_deployment_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.stop_goldengate_deployment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/op") + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + client.stop_goldengate_deployment( + name="name_value", + ) - # get arguments that satisfy an http rule for this method - sample_request = { - "name": "projects/sample1/locations/sample2/cloudExadataInfrastructures/sample3" - } + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + arg = args[0].name + mock_val = "name_value" + assert arg == mock_val - # get truthy value for each flattened field - mock_args = dict( + +def test_stop_goldengate_deployment_flattened_error(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.stop_goldengate_deployment( + goldengate_deployment.StopGoldengateDeploymentRequest(), name="name_value", ) - mock_args.update(sample_request) - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.delete_cloud_exadata_infrastructure(**mock_args) +@pytest.mark.asyncio +async def test_stop_goldengate_deployment_flattened_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.stop_goldengate_deployment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/op") + + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + response = await client.stop_goldengate_deployment( + name="name_value", + ) # Establish that the underlying call was made with the expected # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{name=projects/*/locations/*/cloudExadataInfrastructures/*}" - % client.transport._host, - args[1], + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + arg = args[0].name + mock_val = "name_value" + assert arg == mock_val + + +@pytest.mark.asyncio +async def test_stop_goldengate_deployment_flattened_error_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + await client.stop_goldengate_deployment( + goldengate_deployment.StopGoldengateDeploymentRequest(), + name="name_value", ) -def test_delete_cloud_exadata_infrastructure_rest_flattened_error( - transport: str = "rest", -): +@pytest.mark.parametrize( + "request_type", + [ + goldengate_deployment.StartGoldengateDeploymentRequest(), + {}, + ], +) +def test_start_goldengate_deployment(request_type, transport: str = "grpc"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, ) - # Attempting to call a method with both a request object and flattened - # fields is an error. - with pytest.raises(ValueError): - client.delete_cloud_exadata_infrastructure( - oracledatabase.DeleteCloudExadataInfrastructureRequest(), + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.start_goldengate_deployment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/spam") + response = client.start_goldengate_deployment(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + request = goldengate_deployment.StartGoldengateDeploymentRequest() + assert args[0] == request + + # Establish that the response is the type that we expect. + assert isinstance(response, future.Future) + + +def test_start_goldengate_deployment_non_empty_request_with_auto_populated_field(): + # This test is a coverage failsafe to make sure that UUID4 fields are + # automatically populated, according to AIP-4235, with non-empty requests. + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Populate all string fields in the request which are not UUID4 + # since we want to check that UUID4 are populated automatically + # if they meet the requirements of AIP 4235. + request = goldengate_deployment.StartGoldengateDeploymentRequest( + name="name_value", + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.start_goldengate_deployment), "__call__" + ) as call: + call.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client.start_goldengate_deployment(request=request) + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment.StartGoldengateDeploymentRequest( name="name_value", ) + assert args[0] == request_msg -def test_list_cloud_vm_clusters_rest_use_cached_wrapped_rpc(): +def test_start_goldengate_deployment_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport="grpc", ) # Should wrap all calls on client creation @@ -27139,7 +27303,7 @@ def test_list_cloud_vm_clusters_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.list_cloud_vm_clusters + client._transport.start_goldengate_deployment in client._transport._wrapped_methods ) @@ -27148,252 +27312,349 @@ def test_list_cloud_vm_clusters_rest_use_cached_wrapped_rpc(): mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.list_cloud_vm_clusters] = ( - mock_rpc - ) - + client._transport._wrapped_methods[ + client._transport.start_goldengate_deployment + ] = mock_rpc request = {} - client.list_cloud_vm_clusters(request) + client.start_goldengate_deployment(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_cloud_vm_clusters(request) + # Operation methods call wrapper_fn to build a cached + # client._transport.operations_client instance on first rpc call. + # Subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.start_goldengate_deployment(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_list_cloud_vm_clusters_rest_required_fields( - request_type=oracledatabase.ListCloudVmClustersRequest, +@pytest.mark.asyncio +async def test_start_goldengate_deployment_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", ): - transport_class = transports.OracleDatabaseRestTransport - - request_init = {} - request_init["parent"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) - ) - - # verify fields with default values are dropped - - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).list_cloud_vm_clusters._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) - - # verify required fields with default values are now present - - jsonified_request["parent"] = "parent_value" - - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).list_cloud_vm_clusters._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "filter", - "page_size", - "page_token", + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, ) - ) - jsonified_request.update(unset_fields) - # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", - ) - request = request_type(**request_init) + # Ensure method has been cached + assert ( + client._client._transport.start_goldengate_deployment + in client._client._transport._wrapped_methods + ) - # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListCloudVmClustersResponse() - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "get", - "query_params": pb_request, - } - transcode.return_value = transcode_result + # Replace cached wrapped function with mock + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.start_goldengate_deployment + ] = mock_rpc - response_value = Response() - response_value.status_code = 200 + request = {} + await client.start_goldengate_deployment(request) - # Convert return value to protobuf type - return_value = oracledatabase.ListCloudVmClustersResponse.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + # Operation methods call wrapper_fn to build a cached + # client._transport.operations_client instance on first rpc call. + # Subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() - response = client.list_cloud_vm_clusters(request) + await client.start_goldengate_deployment(request) - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 -def test_list_cloud_vm_clusters_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + goldengate_deployment.StartGoldengateDeploymentRequest(), + {}, + ], +) +async def test_start_goldengate_deployment_async( + request_type, transport: str = "grpc_asyncio" +): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, ) - unset_fields = transport.list_cloud_vm_clusters._get_unset_required_fields({}) - assert set(unset_fields) == ( - set( - ( - "filter", - "pageSize", - "pageToken", - ) + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.start_goldengate_deployment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") ) - & set(("parent",)) - ) + response = await client.start_goldengate_deployment(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + request = goldengate_deployment.StartGoldengateDeploymentRequest() + assert args[0] == request -def test_list_cloud_vm_clusters_rest_flattened(): + # Establish that the response is the type that we expect. + assert isinstance(response, future.Future) + + +def test_start_goldengate_deployment_field_headers(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListCloudVmClustersResponse() - - # get arguments that satisfy an http rule for this method - sample_request = {"parent": "projects/sample1/locations/sample2"} + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = goldengate_deployment.StartGoldengateDeploymentRequest() - # get truthy value for each flattened field - mock_args = dict( - parent="parent_value", - ) - mock_args.update(sample_request) + request.name = "name_value" - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - # Convert return value to protobuf type - return_value = oracledatabase.ListCloudVmClustersResponse.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.start_goldengate_deployment), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.start_goldengate_deployment(request) - client.list_cloud_vm_clusters(**mock_args) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert args[0] == request - # Establish that the underlying call was made with the expected - # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*}/cloudVmClusters" - % client.transport._host, - args[1], - ) + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "name=name_value", + ) in kw["metadata"] -def test_list_cloud_vm_clusters_rest_flattened_error(transport: str = "rest"): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, +@pytest.mark.asyncio +async def test_start_goldengate_deployment_field_headers_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - # Attempting to call a method with both a request object and flattened - # fields is an error. - with pytest.raises(ValueError): - client.list_cloud_vm_clusters( - oracledatabase.ListCloudVmClustersRequest(), - parent="parent_value", + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = goldengate_deployment.StartGoldengateDeploymentRequest() + + request.name = "name_value" + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.start_goldengate_deployment), "__call__" + ) as call: + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/op") ) + await client.start_goldengate_deployment(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert args[0] == request -def test_list_cloud_vm_clusters_rest_pager(transport: str = "rest"): + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "name=name_value", + ) in kw["metadata"] + + +def test_start_goldengate_deployment_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport=transport, ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # TODO(kbandes): remove this mock unless there's a good reason for it. - # with mock.patch.object(path_template, 'transcode') as transcode: - # Set the response as a series of pages - response = ( - oracledatabase.ListCloudVmClustersResponse( - cloud_vm_clusters=[ - vm_cluster.CloudVmCluster(), - vm_cluster.CloudVmCluster(), - vm_cluster.CloudVmCluster(), - ], - next_page_token="abc", - ), - oracledatabase.ListCloudVmClustersResponse( - cloud_vm_clusters=[], - next_page_token="def", - ), - oracledatabase.ListCloudVmClustersResponse( - cloud_vm_clusters=[ - vm_cluster.CloudVmCluster(), - ], - next_page_token="ghi", - ), - oracledatabase.ListCloudVmClustersResponse( - cloud_vm_clusters=[ - vm_cluster.CloudVmCluster(), - vm_cluster.CloudVmCluster(), - ], - ), + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.start_goldengate_deployment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/op") + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + client.start_goldengate_deployment( + name="name_value", ) - # Two responses for two calls - response = response + response - # Wrap the values into proper Response objs - response = tuple( - oracledatabase.ListCloudVmClustersResponse.to_json(x) for x in response + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + arg = args[0].name + mock_val = "name_value" + assert arg == mock_val + + +def test_start_goldengate_deployment_flattened_error(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.start_goldengate_deployment( + goldengate_deployment.StartGoldengateDeploymentRequest(), + name="name_value", ) - return_values = tuple(Response() for i in response) - for return_val, response_val in zip(return_values, response): - return_val._content = response_val.encode("UTF-8") - return_val.status_code = 200 - req.side_effect = return_values - sample_request = {"parent": "projects/sample1/locations/sample2"} - pager = client.list_cloud_vm_clusters(request=sample_request) +@pytest.mark.asyncio +async def test_start_goldengate_deployment_flattened_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) - results = list(pager) - assert len(results) == 6 - assert all(isinstance(i, vm_cluster.CloudVmCluster) for i in results) + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.start_goldengate_deployment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/op") - pages = list(client.list_cloud_vm_clusters(request=sample_request).pages) - for page_, token in zip(pages, ["abc", "def", "ghi", ""]): - assert page_.raw_page.next_page_token == token + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + response = await client.start_goldengate_deployment( + name="name_value", + ) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + arg = args[0].name + mock_val = "name_value" + assert arg == mock_val -def test_get_cloud_vm_cluster_rest_use_cached_wrapped_rpc(): +@pytest.mark.asyncio +async def test_start_goldengate_deployment_flattened_error_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + await client.start_goldengate_deployment( + goldengate_deployment.StartGoldengateDeploymentRequest(), + name="name_value", + ) + + +@pytest.mark.parametrize( + "request_type", + [ + goldengate_connection.ListGoldengateConnectionsRequest(), + {}, + ], +) +def test_list_goldengate_connections(request_type, transport: str = "grpc"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connections), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = goldengate_connection.ListGoldengateConnectionsResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) + response = client.list_goldengate_connections(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + request = goldengate_connection.ListGoldengateConnectionsRequest() + assert args[0] == request + + # Establish that the response is the type that we expect. + assert isinstance(response, pagers.ListGoldengateConnectionsPager) + assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] + + +def test_list_goldengate_connections_non_empty_request_with_auto_populated_field(): + # This test is a coverage failsafe to make sure that UUID4 fields are + # automatically populated, according to AIP-4235, with non-empty requests. + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Populate all string fields in the request which are not UUID4 + # since we want to check that UUID4 are populated automatically + # if they meet the requirements of AIP 4235. + request = goldengate_connection.ListGoldengateConnectionsRequest( + parent="parent_value", + page_token="page_token_value", + filter="filter_value", + order_by="order_by_value", + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connections), "__call__" + ) as call: + call.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client.list_goldengate_connections(request=request) + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_connection.ListGoldengateConnectionsRequest( + parent="parent_value", + page_token="page_token_value", + filter="filter_value", + order_by="order_by_value", + ) + assert args[0] == request_msg + + +def test_list_goldengate_connections_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport="grpc", ) # Should wrap all calls on client creation @@ -27402,7 +27663,8 @@ def test_get_cloud_vm_cluster_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.get_cloud_vm_cluster in client._transport._wrapped_methods + client._transport.list_goldengate_connections + in client._transport._wrapped_methods ) # Replace cached wrapped function with mock @@ -27410,395 +27672,550 @@ def test_get_cloud_vm_cluster_rest_use_cached_wrapped_rpc(): mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.get_cloud_vm_cluster] = ( - mock_rpc + client._transport._wrapped_methods[ + client._transport.list_goldengate_connections + ] = mock_rpc + request = {} + client.list_goldengate_connections(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.list_goldengate_connections(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +@pytest.mark.asyncio +async def test_list_goldengate_connections_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", +): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._client._transport.list_goldengate_connections + in client._client._transport._wrapped_methods ) + # Replace cached wrapped function with mock + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.list_goldengate_connections + ] = mock_rpc + request = {} - client.get_cloud_vm_cluster(request) + await client.list_goldengate_connections(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.get_cloud_vm_cluster(request) + await client.list_goldengate_connections(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_get_cloud_vm_cluster_rest_required_fields( - request_type=oracledatabase.GetCloudVmClusterRequest, +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + goldengate_connection.ListGoldengateConnectionsRequest(), + {}, + ], +) +async def test_list_goldengate_connections_async( + request_type, transport: str = "grpc_asyncio" ): - transport_class = transports.OracleDatabaseRestTransport - - request_init = {} - request_init["name"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, ) - # verify fields with default values are dropped - - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).get_cloud_vm_cluster._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type - # verify required fields with default values are now present + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connections), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection.ListGoldengateConnectionsResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) + ) + response = await client.list_goldengate_connections(request) - jsonified_request["name"] = "name_value" + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + request = goldengate_connection.ListGoldengateConnectionsRequest() + assert args[0] == request - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).get_cloud_vm_cluster._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + # Establish that the response is the type that we expect. + assert isinstance(response, pagers.ListGoldengateConnectionsAsyncPager) + assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] - # verify required fields with non-default values are left alone - assert "name" in jsonified_request - assert jsonified_request["name"] == "name_value" +def test_list_goldengate_connections_field_headers(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - request = request_type(**request_init) - - # Designate an appropriate value for the returned response. - return_value = vm_cluster.CloudVmCluster() - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "get", - "query_params": pb_request, - } - transcode.return_value = transcode_result - response_value = Response() - response_value.status_code = 200 + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = goldengate_connection.ListGoldengateConnectionsRequest() - # Convert return value to protobuf type - return_value = vm_cluster.CloudVmCluster.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) + request.parent = "parent_value" - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connections), "__call__" + ) as call: + call.return_value = goldengate_connection.ListGoldengateConnectionsResponse() + client.list_goldengate_connections(request) - response = client.get_cloud_vm_cluster(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert args[0] == request - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "parent=parent_value", + ) in kw["metadata"] -def test_get_cloud_vm_cluster_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials +@pytest.mark.asyncio +async def test_list_goldengate_connections_field_headers_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - unset_fields = transport.get_cloud_vm_cluster._get_unset_required_fields({}) - assert set(unset_fields) == (set(()) & set(("name",))) + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = goldengate_connection.ListGoldengateConnectionsRequest() + request.parent = "parent_value" -def test_get_cloud_vm_cluster_rest_flattened(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", - ) + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connections), "__call__" + ) as call: + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection.ListGoldengateConnectionsResponse() + ) + await client.list_goldengate_connections(request) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = vm_cluster.CloudVmCluster() + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert args[0] == request - # get arguments that satisfy an http rule for this method - sample_request = { - "name": "projects/sample1/locations/sample2/cloudVmClusters/sample3" - } + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "parent=parent_value", + ) in kw["metadata"] - # get truthy value for each flattened field - mock_args = dict( - name="name_value", - ) - mock_args.update(sample_request) - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - # Convert return value to protobuf type - return_value = vm_cluster.CloudVmCluster.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} +def test_list_goldengate_connections_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + ) - client.get_cloud_vm_cluster(**mock_args) + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connections), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = goldengate_connection.ListGoldengateConnectionsResponse() + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + client.list_goldengate_connections( + parent="parent_value", + ) # Establish that the underlying call was made with the expected # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{name=projects/*/locations/*/cloudVmClusters/*}" - % client.transport._host, - args[1], - ) + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + arg = args[0].parent + mock_val = "parent_value" + assert arg == mock_val -def test_get_cloud_vm_cluster_rest_flattened_error(transport: str = "rest"): +def test_list_goldengate_connections_flattened_error(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport=transport, ) # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.get_cloud_vm_cluster( - oracledatabase.GetCloudVmClusterRequest(), - name="name_value", + client.list_goldengate_connections( + goldengate_connection.ListGoldengateConnectionsRequest(), + parent="parent_value", ) -def test_create_cloud_vm_cluster_rest_use_cached_wrapped_rpc(): - # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, - # instead of constructing them on each call - with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", - ) +@pytest.mark.asyncio +async def test_list_goldengate_connections_flattened_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) - # Should wrap all calls on client creation - assert wrapper_fn.call_count > 0 - wrapper_fn.reset_mock() + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connections), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = goldengate_connection.ListGoldengateConnectionsResponse() - # Ensure method has been cached - assert ( - client._transport.create_cloud_vm_cluster - in client._transport._wrapped_methods + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection.ListGoldengateConnectionsResponse() ) - - # Replace cached wrapped function with mock - mock_rpc = mock.Mock() - mock_rpc.return_value.name = ( - "foo" # operation_request.operation in compute client(s) expect a string. + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + response = await client.list_goldengate_connections( + parent="parent_value", ) - client._transport._wrapped_methods[ - client._transport.create_cloud_vm_cluster - ] = mock_rpc - - request = {} - client.create_cloud_vm_cluster(request) - - # Establish that the underlying gRPC stub method was called. - assert mock_rpc.call_count == 1 - - # Operation methods build a cached wrapper on first rpc call - # subsequent calls should use the cached wrapper - wrapper_fn.reset_mock() - - client.create_cloud_vm_cluster(request) - - # Establish that a new wrapper was not created for this call - assert wrapper_fn.call_count == 0 - assert mock_rpc.call_count == 2 + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + arg = args[0].parent + mock_val = "parent_value" + assert arg == mock_val -def test_create_cloud_vm_cluster_rest_required_fields( - request_type=oracledatabase.CreateCloudVmClusterRequest, -): - transport_class = transports.OracleDatabaseRestTransport - request_init = {} - request_init["parent"] = "" - request_init["cloud_vm_cluster_id"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) +@pytest.mark.asyncio +async def test_list_goldengate_connections_flattened_error_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - # verify fields with default values are dropped - assert "cloudVmClusterId" not in jsonified_request - - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).create_cloud_vm_cluster._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) - - # verify required fields with default values are now present - assert "cloudVmClusterId" in jsonified_request - assert jsonified_request["cloudVmClusterId"] == request_init["cloud_vm_cluster_id"] + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + await client.list_goldengate_connections( + goldengate_connection.ListGoldengateConnectionsRequest(), + parent="parent_value", + ) - jsonified_request["parent"] = "parent_value" - jsonified_request["cloudVmClusterId"] = "cloud_vm_cluster_id_value" - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).create_cloud_vm_cluster._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "cloud_vm_cluster_id", - "request_id", - ) +def test_list_goldengate_connections_pager(transport_name: str = "grpc"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport_name, ) - jsonified_request.update(unset_fields) - # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" - assert "cloudVmClusterId" in jsonified_request - assert jsonified_request["cloudVmClusterId"] == "cloud_vm_cluster_id_value" + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connections), "__call__" + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + goldengate_connection.ListGoldengateConnectionsResponse( + goldengate_connections=[ + goldengate_connection.GoldengateConnection(), + goldengate_connection.GoldengateConnection(), + goldengate_connection.GoldengateConnection(), + ], + next_page_token="abc", + ), + goldengate_connection.ListGoldengateConnectionsResponse( + goldengate_connections=[], + next_page_token="def", + ), + goldengate_connection.ListGoldengateConnectionsResponse( + goldengate_connections=[ + goldengate_connection.GoldengateConnection(), + ], + next_page_token="ghi", + ), + goldengate_connection.ListGoldengateConnectionsResponse( + goldengate_connections=[ + goldengate_connection.GoldengateConnection(), + goldengate_connection.GoldengateConnection(), + ], + ), + RuntimeError, + ) + + expected_metadata = () + retry = retries.Retry() + timeout = 5 + expected_metadata = tuple(expected_metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", ""),)), + ) + pager = client.list_goldengate_connections( + request={}, retry=retry, timeout=timeout + ) + + assert pager._metadata == expected_metadata + assert pager._retry == retry + assert pager._timeout == timeout + + results = list(pager) + assert len(results) == 6 + assert all( + isinstance(i, goldengate_connection.GoldengateConnection) for i in results + ) + +def test_list_goldengate_connections_pages(transport_name: str = "grpc"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport=transport_name, ) - request = request_type(**request_init) - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "post", - "query_params": pb_request, - } - transcode_result["body"] = pb_request - transcode.return_value = transcode_result + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connections), "__call__" + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + goldengate_connection.ListGoldengateConnectionsResponse( + goldengate_connections=[ + goldengate_connection.GoldengateConnection(), + goldengate_connection.GoldengateConnection(), + goldengate_connection.GoldengateConnection(), + ], + next_page_token="abc", + ), + goldengate_connection.ListGoldengateConnectionsResponse( + goldengate_connections=[], + next_page_token="def", + ), + goldengate_connection.ListGoldengateConnectionsResponse( + goldengate_connections=[ + goldengate_connection.GoldengateConnection(), + ], + next_page_token="ghi", + ), + goldengate_connection.ListGoldengateConnectionsResponse( + goldengate_connections=[ + goldengate_connection.GoldengateConnection(), + goldengate_connection.GoldengateConnection(), + ], + ), + RuntimeError, + ) + pages = list(client.list_goldengate_connections(request={}).pages) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} +@pytest.mark.asyncio +async def test_list_goldengate_connections_async_pager(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) - response = client.create_cloud_vm_cluster(request) + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connections), + "__call__", + new_callable=mock.AsyncMock, + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + goldengate_connection.ListGoldengateConnectionsResponse( + goldengate_connections=[ + goldengate_connection.GoldengateConnection(), + goldengate_connection.GoldengateConnection(), + goldengate_connection.GoldengateConnection(), + ], + next_page_token="abc", + ), + goldengate_connection.ListGoldengateConnectionsResponse( + goldengate_connections=[], + next_page_token="def", + ), + goldengate_connection.ListGoldengateConnectionsResponse( + goldengate_connections=[ + goldengate_connection.GoldengateConnection(), + ], + next_page_token="ghi", + ), + goldengate_connection.ListGoldengateConnectionsResponse( + goldengate_connections=[ + goldengate_connection.GoldengateConnection(), + goldengate_connection.GoldengateConnection(), + ], + ), + RuntimeError, + ) + async_pager = await client.list_goldengate_connections( + request={}, + ) + assert async_pager.next_page_token == "abc" + responses = [] + async for response in async_pager: # pragma: no branch + responses.append(response) - expected_params = [ - ( - "cloudVmClusterId", - "", - ), - ("$alt", "json;enum-encoding=int"), - ] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) + assert len(responses) == 6 + assert all( + isinstance(i, goldengate_connection.GoldengateConnection) for i in responses + ) -def test_create_cloud_vm_cluster_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials +@pytest.mark.asyncio +async def test_list_goldengate_connections_async_pages(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - unset_fields = transport.create_cloud_vm_cluster._get_unset_required_fields({}) - assert set(unset_fields) == ( - set( - ( - "cloudVmClusterId", - "requestId", - ) - ) - & set( - ( - "parent", - "cloudVmClusterId", - "cloudVmCluster", - ) + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connections), + "__call__", + new_callable=mock.AsyncMock, + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + goldengate_connection.ListGoldengateConnectionsResponse( + goldengate_connections=[ + goldengate_connection.GoldengateConnection(), + goldengate_connection.GoldengateConnection(), + goldengate_connection.GoldengateConnection(), + ], + next_page_token="abc", + ), + goldengate_connection.ListGoldengateConnectionsResponse( + goldengate_connections=[], + next_page_token="def", + ), + goldengate_connection.ListGoldengateConnectionsResponse( + goldengate_connections=[ + goldengate_connection.GoldengateConnection(), + ], + next_page_token="ghi", + ), + goldengate_connection.ListGoldengateConnectionsResponse( + goldengate_connections=[ + goldengate_connection.GoldengateConnection(), + goldengate_connection.GoldengateConnection(), + ], + ), + RuntimeError, ) - ) + pages = [] + async for page_ in (await client.list_goldengate_connections(request={})).pages: + pages.append(page_) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token -def test_create_cloud_vm_cluster_rest_flattened(): +@pytest.mark.parametrize( + "request_type", + [ + goldengate_connection.GetGoldengateConnectionRequest(), + {}, + ], +) +def test_get_goldengate_connection(request_type, transport: str = "grpc"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport=transport, ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - - # get arguments that satisfy an http rule for this method - sample_request = {"parent": "projects/sample1/locations/sample2"} + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type - # get truthy value for each flattened field - mock_args = dict( - parent="parent_value", - cloud_vm_cluster=vm_cluster.CloudVmCluster(name="name_value"), - cloud_vm_cluster_id="cloud_vm_cluster_id_value", + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = goldengate_connection.GoldengateConnection( + name="name_value", + gcp_oracle_zone="gcp_oracle_zone_value", + odb_network="odb_network_value", + odb_subnet="odb_subnet_value", + entitlement_id="entitlement_id_value", + oci_url="oci_url_value", ) - mock_args.update(sample_request) - - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.get_goldengate_connection(request) - client.create_cloud_vm_cluster(**mock_args) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + request = goldengate_connection.GetGoldengateConnectionRequest() + assert args[0] == request - # Establish that the underlying call was made with the expected - # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*}/cloudVmClusters" - % client.transport._host, - args[1], - ) + # Establish that the response is the type that we expect. + assert isinstance(response, goldengate_connection.GoldengateConnection) + assert response.name == "name_value" + assert response.gcp_oracle_zone == "gcp_oracle_zone_value" + assert response.odb_network == "odb_network_value" + assert response.odb_subnet == "odb_subnet_value" + assert response.entitlement_id == "entitlement_id_value" + assert response.oci_url == "oci_url_value" -def test_create_cloud_vm_cluster_rest_flattened_error(transport: str = "rest"): +def test_get_goldengate_connection_non_empty_request_with_auto_populated_field(): + # This test is a coverage failsafe to make sure that UUID4 fields are + # automatically populated, according to AIP-4235, with non-empty requests. client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport=transport, + transport="grpc", ) - # Attempting to call a method with both a request object and flattened - # fields is an error. - with pytest.raises(ValueError): - client.create_cloud_vm_cluster( - oracledatabase.CreateCloudVmClusterRequest(), - parent="parent_value", - cloud_vm_cluster=vm_cluster.CloudVmCluster(name="name_value"), - cloud_vm_cluster_id="cloud_vm_cluster_id_value", + # Populate all string fields in the request which are not UUID4 + # since we want to check that UUID4 are populated automatically + # if they meet the requirements of AIP 4235. + request = goldengate_connection.GetGoldengateConnectionRequest( + name="name_value", + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection), "__call__" + ) as call: + call.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client.get_goldengate_connection(request=request) + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_connection.GetGoldengateConnectionRequest( + name="name_value", ) + assert args[0] == request_msg -def test_delete_cloud_vm_cluster_rest_use_cached_wrapped_rpc(): +def test_get_goldengate_connection_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport="grpc", ) # Should wrap all calls on client creation @@ -27807,7 +28224,7 @@ def test_delete_cloud_vm_cluster_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.delete_cloud_vm_cluster + client._transport.get_goldengate_connection in client._transport._wrapped_methods ) @@ -27817,187 +28234,342 @@ def test_delete_cloud_vm_cluster_rest_use_cached_wrapped_rpc(): "foo" # operation_request.operation in compute client(s) expect a string. ) client._transport._wrapped_methods[ - client._transport.delete_cloud_vm_cluster + client._transport.get_goldengate_connection ] = mock_rpc - request = {} - client.delete_cloud_vm_cluster(request) + client.get_goldengate_connection(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - # Operation methods build a cached wrapper on first rpc call - # subsequent calls should use the cached wrapper - wrapper_fn.reset_mock() - - client.delete_cloud_vm_cluster(request) + client.get_goldengate_connection(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_delete_cloud_vm_cluster_rest_required_fields( - request_type=oracledatabase.DeleteCloudVmClusterRequest, +@pytest.mark.asyncio +async def test_get_goldengate_connection_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", ): - transport_class = transports.OracleDatabaseRestTransport + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) - request_init = {} - request_init["name"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) - ) + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() - # verify fields with default values are dropped + # Ensure method has been cached + assert ( + client._client._transport.get_goldengate_connection + in client._client._transport._wrapped_methods + ) - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).delete_cloud_vm_cluster._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + # Replace cached wrapped function with mock + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.get_goldengate_connection + ] = mock_rpc - # verify required fields with default values are now present + request = {} + await client.get_goldengate_connection(request) - jsonified_request["name"] = "name_value" + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).delete_cloud_vm_cluster._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "force", - "request_id", - ) + await client.get_goldengate_connection(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + goldengate_connection.GetGoldengateConnectionRequest(), + {}, + ], +) +async def test_get_goldengate_connection_async( + request_type, transport: str = "grpc_asyncio" +): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, ) - jsonified_request.update(unset_fields) - # verify required fields with non-default values are left alone - assert "name" in jsonified_request - assert jsonified_request["name"] == "name_value" + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection.GoldengateConnection( + name="name_value", + gcp_oracle_zone="gcp_oracle_zone_value", + odb_network="odb_network_value", + odb_subnet="odb_subnet_value", + entitlement_id="entitlement_id_value", + oci_url="oci_url_value", + ) + ) + response = await client.get_goldengate_connection(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + request = goldengate_connection.GetGoldengateConnectionRequest() + assert args[0] == request + + # Establish that the response is the type that we expect. + assert isinstance(response, goldengate_connection.GoldengateConnection) + assert response.name == "name_value" + assert response.gcp_oracle_zone == "gcp_oracle_zone_value" + assert response.odb_network == "odb_network_value" + assert response.odb_subnet == "odb_subnet_value" + assert response.entitlement_id == "entitlement_id_value" + assert response.oci_url == "oci_url_value" + +def test_get_goldengate_connection_field_headers(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - request = request_type(**request_init) - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "delete", - "query_params": pb_request, - } - transcode.return_value = transcode_result + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = goldengate_connection.GetGoldengateConnectionRequest() - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) + request.name = "name_value" - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection), "__call__" + ) as call: + call.return_value = goldengate_connection.GoldengateConnection() + client.get_goldengate_connection(request) - response = client.delete_cloud_vm_cluster(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert args[0] == request - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "name=name_value", + ) in kw["metadata"] -def test_delete_cloud_vm_cluster_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials +@pytest.mark.asyncio +async def test_get_goldengate_connection_field_headers_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - unset_fields = transport.delete_cloud_vm_cluster._get_unset_required_fields({}) - assert set(unset_fields) == ( - set( - ( - "force", - "requestId", - ) + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = goldengate_connection.GetGoldengateConnectionRequest() + + request.name = "name_value" + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection), "__call__" + ) as call: + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection.GoldengateConnection() ) - & set(("name",)) - ) + await client.get_goldengate_connection(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert args[0] == request + + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "name=name_value", + ) in kw["metadata"] -def test_delete_cloud_vm_cluster_rest_flattened(): +def test_get_goldengate_connection_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - - # get arguments that satisfy an http rule for this method - sample_request = { - "name": "projects/sample1/locations/sample2/cloudVmClusters/sample3" - } - - # get truthy value for each flattened field - mock_args = dict( + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = goldengate_connection.GoldengateConnection() + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + client.get_goldengate_connection( name="name_value", ) - mock_args.update(sample_request) - - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - - client.delete_cloud_vm_cluster(**mock_args) # Establish that the underlying call was made with the expected # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{name=projects/*/locations/*/cloudVmClusters/*}" - % client.transport._host, - args[1], - ) + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + arg = args[0].name + mock_val = "name_value" + assert arg == mock_val -def test_delete_cloud_vm_cluster_rest_flattened_error(transport: str = "rest"): +def test_get_goldengate_connection_flattened_error(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport=transport, ) # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.delete_cloud_vm_cluster( - oracledatabase.DeleteCloudVmClusterRequest(), + client.get_goldengate_connection( + goldengate_connection.GetGoldengateConnectionRequest(), name="name_value", ) -def test_list_entitlements_rest_use_cached_wrapped_rpc(): - # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, - # instead of constructing them on each call - with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", +@pytest.mark.asyncio +async def test_get_goldengate_connection_flattened_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = goldengate_connection.GoldengateConnection() + + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection.GoldengateConnection() + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + response = await client.get_goldengate_connection( + name="name_value", + ) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + arg = args[0].name + mock_val = "name_value" + assert arg == mock_val + + +@pytest.mark.asyncio +async def test_get_goldengate_connection_flattened_error_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + await client.get_goldengate_connection( + goldengate_connection.GetGoldengateConnectionRequest(), + name="name_value", + ) + + +@pytest.mark.parametrize( + "request_type", + [ + gco_goldengate_connection.CreateGoldengateConnectionRequest(), + {}, + ], +) +def test_create_goldengate_connection(request_type, transport: str = "grpc"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_connection), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/spam") + response = client.create_goldengate_connection(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + request = gco_goldengate_connection.CreateGoldengateConnectionRequest() + assert args[0] == request + + # Establish that the response is the type that we expect. + assert isinstance(response, future.Future) + + +def test_create_goldengate_connection_non_empty_request_with_auto_populated_field(): + # This test is a coverage failsafe to make sure that UUID4 fields are + # automatically populated, according to AIP-4235, with non-empty requests. + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Populate all string fields in the request which are not UUID4 + # since we want to check that UUID4 are populated automatically + # if they meet the requirements of AIP 4235. + request = gco_goldengate_connection.CreateGoldengateConnectionRequest( + parent="parent_value", + goldengate_connection_id="goldengate_connection_id_value", + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_connection), "__call__" + ) as call: + call.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client.create_goldengate_connection(request=request) + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = gco_goldengate_connection.CreateGoldengateConnectionRequest( + parent="parent_value", + goldengate_connection_id="goldengate_connection_id_value", + ) + assert args[0] == request_msg + + +def test_create_goldengate_connection_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", ) # Should wrap all calls on client creation @@ -28005,257 +28577,376 @@ def test_list_entitlements_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert client._transport.list_entitlements in client._transport._wrapped_methods + assert ( + client._transport.create_goldengate_connection + in client._transport._wrapped_methods + ) # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.list_entitlements] = ( - mock_rpc - ) - + client._transport._wrapped_methods[ + client._transport.create_goldengate_connection + ] = mock_rpc request = {} - client.list_entitlements(request) + client.create_goldengate_connection(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_entitlements(request) + # Operation methods call wrapper_fn to build a cached + # client._transport.operations_client instance on first rpc call. + # Subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.create_goldengate_connection(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_list_entitlements_rest_required_fields( - request_type=oracledatabase.ListEntitlementsRequest, +@pytest.mark.asyncio +async def test_create_goldengate_connection_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", ): - transport_class = transports.OracleDatabaseRestTransport + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) - request_init = {} - request_init["parent"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) - ) + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() - # verify fields with default values are dropped + # Ensure method has been cached + assert ( + client._client._transport.create_goldengate_connection + in client._client._transport._wrapped_methods + ) - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).list_entitlements._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + # Replace cached wrapped function with mock + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.create_goldengate_connection + ] = mock_rpc - # verify required fields with default values are now present + request = {} + await client.create_goldengate_connection(request) - jsonified_request["parent"] = "parent_value" + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).list_entitlements._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "page_size", - "page_token", - ) + # Operation methods call wrapper_fn to build a cached + # client._transport.operations_client instance on first rpc call. + # Subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + await client.create_goldengate_connection(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + gco_goldengate_connection.CreateGoldengateConnectionRequest(), + {}, + ], +) +async def test_create_goldengate_connection_async( + request_type, transport: str = "grpc_asyncio" +): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, ) - jsonified_request.update(unset_fields) - # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_connection), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + response = await client.create_goldengate_connection(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + request = gco_goldengate_connection.CreateGoldengateConnectionRequest() + assert args[0] == request + + # Establish that the response is the type that we expect. + assert isinstance(response, future.Future) + +def test_create_goldengate_connection_field_headers(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - request = request_type(**request_init) - - # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListEntitlementsResponse() - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "get", - "query_params": pb_request, - } - transcode.return_value = transcode_result - response_value = Response() - response_value.status_code = 200 + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = gco_goldengate_connection.CreateGoldengateConnectionRequest() - # Convert return value to protobuf type - return_value = oracledatabase.ListEntitlementsResponse.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) + request.parent = "parent_value" - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_connection), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.create_goldengate_connection(request) - response = client.list_entitlements(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert args[0] == request - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "parent=parent_value", + ) in kw["metadata"] -def test_list_entitlements_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials +@pytest.mark.asyncio +async def test_create_goldengate_connection_field_headers_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - unset_fields = transport.list_entitlements._get_unset_required_fields({}) - assert set(unset_fields) == ( - set( - ( - "pageSize", - "pageToken", - ) + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = gco_goldengate_connection.CreateGoldengateConnectionRequest() + + request.parent = "parent_value" + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_connection), "__call__" + ) as call: + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/op") ) - & set(("parent",)) - ) + await client.create_goldengate_connection(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert args[0] == request -def test_list_entitlements_rest_flattened(): + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "parent=parent_value", + ) in kw["metadata"] + + +def test_create_goldengate_connection_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListEntitlementsResponse() + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_connection), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/op") + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + client.create_goldengate_connection( + parent="parent_value", + goldengate_connection=gco_goldengate_connection.GoldengateConnection( + name="name_value" + ), + goldengate_connection_id="goldengate_connection_id_value", + ) - # get arguments that satisfy an http rule for this method - sample_request = {"parent": "projects/sample1/locations/sample2"} + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + arg = args[0].parent + mock_val = "parent_value" + assert arg == mock_val + arg = args[0].goldengate_connection + mock_val = gco_goldengate_connection.GoldengateConnection(name="name_value") + assert arg == mock_val + arg = args[0].goldengate_connection_id + mock_val = "goldengate_connection_id_value" + assert arg == mock_val - # get truthy value for each flattened field - mock_args = dict( + +def test_create_goldengate_connection_flattened_error(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.create_goldengate_connection( + gco_goldengate_connection.CreateGoldengateConnectionRequest(), parent="parent_value", + goldengate_connection=gco_goldengate_connection.GoldengateConnection( + name="name_value" + ), + goldengate_connection_id="goldengate_connection_id_value", ) - mock_args.update(sample_request) - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - # Convert return value to protobuf type - return_value = oracledatabase.ListEntitlementsResponse.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_entitlements(**mock_args) +@pytest.mark.asyncio +async def test_create_goldengate_connection_flattened_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_connection), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/op") + + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + response = await client.create_goldengate_connection( + parent="parent_value", + goldengate_connection=gco_goldengate_connection.GoldengateConnection( + name="name_value" + ), + goldengate_connection_id="goldengate_connection_id_value", + ) # Establish that the underlying call was made with the expected # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*}/entitlements" - % client.transport._host, - args[1], - ) + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + arg = args[0].parent + mock_val = "parent_value" + assert arg == mock_val + arg = args[0].goldengate_connection + mock_val = gco_goldengate_connection.GoldengateConnection(name="name_value") + assert arg == mock_val + arg = args[0].goldengate_connection_id + mock_val = "goldengate_connection_id_value" + assert arg == mock_val -def test_list_entitlements_rest_flattened_error(transport: str = "rest"): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, +@pytest.mark.asyncio +async def test_create_goldengate_connection_flattened_error_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.list_entitlements( - oracledatabase.ListEntitlementsRequest(), + await client.create_goldengate_connection( + gco_goldengate_connection.CreateGoldengateConnectionRequest(), parent="parent_value", + goldengate_connection=gco_goldengate_connection.GoldengateConnection( + name="name_value" + ), + goldengate_connection_id="goldengate_connection_id_value", ) -def test_list_entitlements_rest_pager(transport: str = "rest"): +@pytest.mark.parametrize( + "request_type", + [ + goldengate_connection.DeleteGoldengateConnectionRequest(), + {}, + ], +) +def test_delete_goldengate_connection(request_type, transport: str = "grpc"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # TODO(kbandes): remove this mock unless there's a good reason for it. - # with mock.patch.object(path_template, 'transcode') as transcode: - # Set the response as a series of pages - response = ( - oracledatabase.ListEntitlementsResponse( - entitlements=[ - entitlement.Entitlement(), - entitlement.Entitlement(), - entitlement.Entitlement(), - ], - next_page_token="abc", - ), - oracledatabase.ListEntitlementsResponse( - entitlements=[], - next_page_token="def", - ), - oracledatabase.ListEntitlementsResponse( - entitlements=[ - entitlement.Entitlement(), - ], - next_page_token="ghi", - ), - oracledatabase.ListEntitlementsResponse( - entitlements=[ - entitlement.Entitlement(), - entitlement.Entitlement(), - ], - ), - ) - # Two responses for two calls - response = response + response + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type - # Wrap the values into proper Response objs - response = tuple( - oracledatabase.ListEntitlementsResponse.to_json(x) for x in response - ) - return_values = tuple(Response() for i in response) - for return_val, response_val in zip(return_values, response): - return_val._content = response_val.encode("UTF-8") - return_val.status_code = 200 - req.side_effect = return_values + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_connection), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/spam") + response = client.delete_goldengate_connection(request) - sample_request = {"parent": "projects/sample1/locations/sample2"} + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + request = goldengate_connection.DeleteGoldengateConnectionRequest() + assert args[0] == request - pager = client.list_entitlements(request=sample_request) + # Establish that the response is the type that we expect. + assert isinstance(response, future.Future) - results = list(pager) - assert len(results) == 6 - assert all(isinstance(i, entitlement.Entitlement) for i in results) - pages = list(client.list_entitlements(request=sample_request).pages) - for page_, token in zip(pages, ["abc", "def", "ghi", ""]): - assert page_.raw_page.next_page_token == token +def test_delete_goldengate_connection_non_empty_request_with_auto_populated_field(): + # This test is a coverage failsafe to make sure that UUID4 fields are + # automatically populated, according to AIP-4235, with non-empty requests. + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + # Populate all string fields in the request which are not UUID4 + # since we want to check that UUID4 are populated automatically + # if they meet the requirements of AIP 4235. + request = goldengate_connection.DeleteGoldengateConnectionRequest( + name="name_value", + ) -def test_list_db_servers_rest_use_cached_wrapped_rpc(): + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_connection), "__call__" + ) as call: + call.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client.delete_goldengate_connection(request=request) + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_connection.DeleteGoldengateConnectionRequest( + name="name_value", + ) + assert args[0] == request_msg + + +def test_delete_goldengate_connection_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport="grpc", ) # Should wrap all calls on client creation @@ -28263,259 +28954,357 @@ def test_list_db_servers_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert client._transport.list_db_servers in client._transport._wrapped_methods + assert ( + client._transport.delete_goldengate_connection + in client._transport._wrapped_methods + ) # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.list_db_servers] = mock_rpc - + client._transport._wrapped_methods[ + client._transport.delete_goldengate_connection + ] = mock_rpc request = {} - client.list_db_servers(request) + client.delete_goldengate_connection(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_db_servers(request) + # Operation methods call wrapper_fn to build a cached + # client._transport.operations_client instance on first rpc call. + # Subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.delete_goldengate_connection(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_list_db_servers_rest_required_fields( - request_type=oracledatabase.ListDbServersRequest, +@pytest.mark.asyncio +async def test_delete_goldengate_connection_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", ): - transport_class = transports.OracleDatabaseRestTransport + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) - request_init = {} - request_init["parent"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) - ) + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() - # verify fields with default values are dropped + # Ensure method has been cached + assert ( + client._client._transport.delete_goldengate_connection + in client._client._transport._wrapped_methods + ) - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).list_db_servers._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + # Replace cached wrapped function with mock + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.delete_goldengate_connection + ] = mock_rpc - # verify required fields with default values are now present + request = {} + await client.delete_goldengate_connection(request) - jsonified_request["parent"] = "parent_value" + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).list_db_servers._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "page_size", - "page_token", - ) + # Operation methods call wrapper_fn to build a cached + # client._transport.operations_client instance on first rpc call. + # Subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + await client.delete_goldengate_connection(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + goldengate_connection.DeleteGoldengateConnectionRequest(), + {}, + ], +) +async def test_delete_goldengate_connection_async( + request_type, transport: str = "grpc_asyncio" +): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, ) - jsonified_request.update(unset_fields) - # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_connection), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + response = await client.delete_goldengate_connection(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + request = goldengate_connection.DeleteGoldengateConnectionRequest() + assert args[0] == request + + # Establish that the response is the type that we expect. + assert isinstance(response, future.Future) + +def test_delete_goldengate_connection_field_headers(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - request = request_type(**request_init) - - # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListDbServersResponse() - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "get", - "query_params": pb_request, - } - transcode.return_value = transcode_result - response_value = Response() - response_value.status_code = 200 + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = goldengate_connection.DeleteGoldengateConnectionRequest() - # Convert return value to protobuf type - return_value = oracledatabase.ListDbServersResponse.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) + request.name = "name_value" - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_connection), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.delete_goldengate_connection(request) - response = client.list_db_servers(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert args[0] == request - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "name=name_value", + ) in kw["metadata"] -def test_list_db_servers_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials +@pytest.mark.asyncio +async def test_delete_goldengate_connection_field_headers_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - unset_fields = transport.list_db_servers._get_unset_required_fields({}) - assert set(unset_fields) == ( - set( - ( - "pageSize", - "pageToken", - ) + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = goldengate_connection.DeleteGoldengateConnectionRequest() + + request.name = "name_value" + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_connection), "__call__" + ) as call: + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/op") ) - & set(("parent",)) - ) + await client.delete_goldengate_connection(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert args[0] == request -def test_list_db_servers_rest_flattened(): + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "name=name_value", + ) in kw["metadata"] + + +def test_delete_goldengate_connection_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListDbServersResponse() + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_connection), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/op") + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + client.delete_goldengate_connection( + name="name_value", + ) - # get arguments that satisfy an http rule for this method - sample_request = { - "parent": "projects/sample1/locations/sample2/cloudExadataInfrastructures/sample3" - } + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + arg = args[0].name + mock_val = "name_value" + assert arg == mock_val - # get truthy value for each flattened field - mock_args = dict( - parent="parent_value", + +def test_delete_goldengate_connection_flattened_error(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.delete_goldengate_connection( + goldengate_connection.DeleteGoldengateConnectionRequest(), + name="name_value", ) - mock_args.update(sample_request) - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - # Convert return value to protobuf type - return_value = oracledatabase.ListDbServersResponse.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_db_servers(**mock_args) +@pytest.mark.asyncio +async def test_delete_goldengate_connection_flattened_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_connection), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/op") + + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + response = await client.delete_goldengate_connection( + name="name_value", + ) # Establish that the underlying call was made with the expected # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*/cloudExadataInfrastructures/*}/dbServers" - % client.transport._host, - args[1], - ) + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + arg = args[0].name + mock_val = "name_value" + assert arg == mock_val -def test_list_db_servers_rest_flattened_error(transport: str = "rest"): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, +@pytest.mark.asyncio +async def test_delete_goldengate_connection_flattened_error_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.list_db_servers( - oracledatabase.ListDbServersRequest(), - parent="parent_value", + await client.delete_goldengate_connection( + goldengate_connection.DeleteGoldengateConnectionRequest(), + name="name_value", ) -def test_list_db_servers_rest_pager(transport: str = "rest"): +@pytest.mark.parametrize( + "request_type", + [ + goldengate_deployment_version.GetGoldengateDeploymentVersionRequest(), + {}, + ], +) +def test_get_goldengate_deployment_version(request_type, transport: str = "grpc"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # TODO(kbandes): remove this mock unless there's a good reason for it. - # with mock.patch.object(path_template, 'transcode') as transcode: - # Set the response as a series of pages - response = ( - oracledatabase.ListDbServersResponse( - db_servers=[ - db_server.DbServer(), - db_server.DbServer(), - db_server.DbServer(), - ], - next_page_token="abc", - ), - oracledatabase.ListDbServersResponse( - db_servers=[], - next_page_token="def", - ), - oracledatabase.ListDbServersResponse( - db_servers=[ - db_server.DbServer(), - ], - next_page_token="ghi", - ), - oracledatabase.ListDbServersResponse( - db_servers=[ - db_server.DbServer(), - db_server.DbServer(), - ], - ), - ) - # Two responses for two calls - response = response + response + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type - # Wrap the values into proper Response objs - response = tuple( - oracledatabase.ListDbServersResponse.to_json(x) for x in response + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_version), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = goldengate_deployment_version.GoldengateDeploymentVersion( + name="name_value", + ocid="ocid_value", ) - return_values = tuple(Response() for i in response) - for return_val, response_val in zip(return_values, response): - return_val._content = response_val.encode("UTF-8") - return_val.status_code = 200 - req.side_effect = return_values + response = client.get_goldengate_deployment_version(request) - sample_request = { - "parent": "projects/sample1/locations/sample2/cloudExadataInfrastructures/sample3" - } + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + request = goldengate_deployment_version.GetGoldengateDeploymentVersionRequest() + assert args[0] == request - pager = client.list_db_servers(request=sample_request) + # Establish that the response is the type that we expect. + assert isinstance( + response, goldengate_deployment_version.GoldengateDeploymentVersion + ) + assert response.name == "name_value" + assert response.ocid == "ocid_value" - results = list(pager) - assert len(results) == 6 - assert all(isinstance(i, db_server.DbServer) for i in results) - pages = list(client.list_db_servers(request=sample_request).pages) - for page_, token in zip(pages, ["abc", "def", "ghi", ""]): - assert page_.raw_page.next_page_token == token +def test_get_goldengate_deployment_version_non_empty_request_with_auto_populated_field(): + # This test is a coverage failsafe to make sure that UUID4 fields are + # automatically populated, according to AIP-4235, with non-empty requests. + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Populate all string fields in the request which are not UUID4 + # since we want to check that UUID4 are populated automatically + # if they meet the requirements of AIP 4235. + request = goldengate_deployment_version.GetGoldengateDeploymentVersionRequest( + name="name_value", + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_version), "__call__" + ) as call: + call.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client.get_goldengate_deployment_version(request=request) + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = ( + goldengate_deployment_version.GetGoldengateDeploymentVersionRequest( + name="name_value", + ) + ) + assert args[0] == request_msg -def test_list_db_nodes_rest_use_cached_wrapped_rpc(): +def test_get_goldengate_deployment_version_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport="grpc", ) # Should wrap all calls on client creation @@ -28523,259 +29312,360 @@ def test_list_db_nodes_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert client._transport.list_db_nodes in client._transport._wrapped_methods + assert ( + client._transport.get_goldengate_deployment_version + in client._transport._wrapped_methods + ) # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.list_db_nodes] = mock_rpc - + client._transport._wrapped_methods[ + client._transport.get_goldengate_deployment_version + ] = mock_rpc request = {} - client.list_db_nodes(request) + client.get_goldengate_deployment_version(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_db_nodes(request) + client.get_goldengate_deployment_version(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_list_db_nodes_rest_required_fields( - request_type=oracledatabase.ListDbNodesRequest, +@pytest.mark.asyncio +async def test_get_goldengate_deployment_version_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", ): - transport_class = transports.OracleDatabaseRestTransport + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) - request_init = {} - request_init["parent"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) - ) + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() - # verify fields with default values are dropped + # Ensure method has been cached + assert ( + client._client._transport.get_goldengate_deployment_version + in client._client._transport._wrapped_methods + ) - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).list_db_nodes._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + # Replace cached wrapped function with mock + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.get_goldengate_deployment_version + ] = mock_rpc - # verify required fields with default values are now present + request = {} + await client.get_goldengate_deployment_version(request) - jsonified_request["parent"] = "parent_value" + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).list_db_nodes._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "page_size", - "page_token", - ) - ) - jsonified_request.update(unset_fields) + await client.get_goldengate_deployment_version(request) - # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + goldengate_deployment_version.GetGoldengateDeploymentVersionRequest(), + {}, + ], +) +async def test_get_goldengate_deployment_version_async( + request_type, transport: str = "grpc_asyncio" +): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, ) - request = request_type(**request_init) - # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListDbNodesResponse() - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "get", - "query_params": pb_request, - } - transcode.return_value = transcode_result + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type - response_value = Response() - response_value.status_code = 200 + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_version), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_deployment_version.GoldengateDeploymentVersion( + name="name_value", + ocid="ocid_value", + ) + ) + response = await client.get_goldengate_deployment_version(request) - # Convert return value to protobuf type - return_value = oracledatabase.ListDbNodesResponse.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + request = goldengate_deployment_version.GetGoldengateDeploymentVersionRequest() + assert args[0] == request - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + # Establish that the response is the type that we expect. + assert isinstance( + response, goldengate_deployment_version.GoldengateDeploymentVersion + ) + assert response.name == "name_value" + assert response.ocid == "ocid_value" - response = client.list_db_nodes(request) - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) +def test_get_goldengate_deployment_version_field_headers(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + ) + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = goldengate_deployment_version.GetGoldengateDeploymentVersionRequest() -def test_list_db_nodes_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials + request.name = "name_value" + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_version), "__call__" + ) as call: + call.return_value = goldengate_deployment_version.GoldengateDeploymentVersion() + client.get_goldengate_deployment_version(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert args[0] == request + + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "name=name_value", + ) in kw["metadata"] + + +@pytest.mark.asyncio +async def test_get_goldengate_deployment_version_field_headers_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - unset_fields = transport.list_db_nodes._get_unset_required_fields({}) - assert set(unset_fields) == ( - set( - ( - "pageSize", - "pageToken", - ) + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = goldengate_deployment_version.GetGoldengateDeploymentVersionRequest() + + request.name = "name_value" + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_version), "__call__" + ) as call: + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_deployment_version.GoldengateDeploymentVersion() ) - & set(("parent",)) - ) + await client.get_goldengate_deployment_version(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert args[0] == request -def test_list_db_nodes_rest_flattened(): + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "name=name_value", + ) in kw["metadata"] + + +def test_get_goldengate_deployment_version_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListDbNodesResponse() + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_version), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = goldengate_deployment_version.GoldengateDeploymentVersion() + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + client.get_goldengate_deployment_version( + name="name_value", + ) - # get arguments that satisfy an http rule for this method - sample_request = { - "parent": "projects/sample1/locations/sample2/cloudVmClusters/sample3" - } + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + arg = args[0].name + mock_val = "name_value" + assert arg == mock_val - # get truthy value for each flattened field - mock_args = dict( - parent="parent_value", + +def test_get_goldengate_deployment_version_flattened_error(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.get_goldengate_deployment_version( + goldengate_deployment_version.GetGoldengateDeploymentVersionRequest(), + name="name_value", ) - mock_args.update(sample_request) - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - # Convert return value to protobuf type - return_value = oracledatabase.ListDbNodesResponse.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_db_nodes(**mock_args) +@pytest.mark.asyncio +async def test_get_goldengate_deployment_version_flattened_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_version), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = goldengate_deployment_version.GoldengateDeploymentVersion() + + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_deployment_version.GoldengateDeploymentVersion() + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + response = await client.get_goldengate_deployment_version( + name="name_value", + ) # Establish that the underlying call was made with the expected # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*/cloudVmClusters/*}/dbNodes" - % client.transport._host, - args[1], - ) + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + arg = args[0].name + mock_val = "name_value" + assert arg == mock_val -def test_list_db_nodes_rest_flattened_error(transport: str = "rest"): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, +@pytest.mark.asyncio +async def test_get_goldengate_deployment_version_flattened_error_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.list_db_nodes( - oracledatabase.ListDbNodesRequest(), - parent="parent_value", + await client.get_goldengate_deployment_version( + goldengate_deployment_version.GetGoldengateDeploymentVersionRequest(), + name="name_value", ) -def test_list_db_nodes_rest_pager(transport: str = "rest"): +@pytest.mark.parametrize( + "request_type", + [ + goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest(), + {}, + ], +) +def test_list_goldengate_deployment_versions(request_type, transport: str = "grpc"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # TODO(kbandes): remove this mock unless there's a good reason for it. - # with mock.patch.object(path_template, 'transcode') as transcode: - # Set the response as a series of pages - response = ( - oracledatabase.ListDbNodesResponse( - db_nodes=[ - db_node.DbNode(), - db_node.DbNode(), - db_node.DbNode(), - ], - next_page_token="abc", - ), - oracledatabase.ListDbNodesResponse( - db_nodes=[], - next_page_token="def", - ), - oracledatabase.ListDbNodesResponse( - db_nodes=[ - db_node.DbNode(), - ], - next_page_token="ghi", - ), - oracledatabase.ListDbNodesResponse( - db_nodes=[ - db_node.DbNode(), - db_node.DbNode(), - ], - ), + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_versions), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) ) - # Two responses for two calls - response = response + response + response = client.list_goldengate_deployment_versions(request) - # Wrap the values into proper Response objs - response = tuple( - oracledatabase.ListDbNodesResponse.to_json(x) for x in response + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + request = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest() ) - return_values = tuple(Response() for i in response) - for return_val, response_val in zip(return_values, response): - return_val._content = response_val.encode("UTF-8") - return_val.status_code = 200 - req.side_effect = return_values + assert args[0] == request - sample_request = { - "parent": "projects/sample1/locations/sample2/cloudVmClusters/sample3" - } + # Establish that the response is the type that we expect. + assert isinstance(response, pagers.ListGoldengateDeploymentVersionsPager) + assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] - pager = client.list_db_nodes(request=sample_request) - results = list(pager) - assert len(results) == 6 - assert all(isinstance(i, db_node.DbNode) for i in results) +def test_list_goldengate_deployment_versions_non_empty_request_with_auto_populated_field(): + # This test is a coverage failsafe to make sure that UUID4 fields are + # automatically populated, according to AIP-4235, with non-empty requests. + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) - pages = list(client.list_db_nodes(request=sample_request).pages) - for page_, token in zip(pages, ["abc", "def", "ghi", ""]): - assert page_.raw_page.next_page_token == token + # Populate all string fields in the request which are not UUID4 + # since we want to check that UUID4 are populated automatically + # if they meet the requirements of AIP 4235. + request = goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest( + parent="parent_value", + page_token="page_token_value", + filter="filter_value", + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_versions), "__call__" + ) as call: + call.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client.list_goldengate_deployment_versions(request=request) + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest( + parent="parent_value", + page_token="page_token_value", + filter="filter_value", + ) + ) + assert args[0] == request_msg -def test_list_gi_versions_rest_use_cached_wrapped_rpc(): +def test_list_goldengate_deployment_versions_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport="grpc", ) # Should wrap all calls on client creation @@ -28783,258 +29673,588 @@ def test_list_gi_versions_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert client._transport.list_gi_versions in client._transport._wrapped_methods + assert ( + client._transport.list_goldengate_deployment_versions + in client._transport._wrapped_methods + ) # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.list_gi_versions] = ( - mock_rpc - ) - + client._transport._wrapped_methods[ + client._transport.list_goldengate_deployment_versions + ] = mock_rpc request = {} - client.list_gi_versions(request) + client.list_goldengate_deployment_versions(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_gi_versions(request) + client.list_goldengate_deployment_versions(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_list_gi_versions_rest_required_fields( - request_type=oracledatabase.ListGiVersionsRequest, +@pytest.mark.asyncio +async def test_list_goldengate_deployment_versions_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", ): - transport_class = transports.OracleDatabaseRestTransport + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) - request_init = {} - request_init["parent"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) - ) + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() - # verify fields with default values are dropped + # Ensure method has been cached + assert ( + client._client._transport.list_goldengate_deployment_versions + in client._client._transport._wrapped_methods + ) - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).list_gi_versions._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + # Replace cached wrapped function with mock + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.list_goldengate_deployment_versions + ] = mock_rpc - # verify required fields with default values are now present + request = {} + await client.list_goldengate_deployment_versions(request) - jsonified_request["parent"] = "parent_value" + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).list_gi_versions._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "filter", - "page_size", - "page_token", - ) + await client.list_goldengate_deployment_versions(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest(), + {}, + ], +) +async def test_list_goldengate_deployment_versions_async( + request_type, transport: str = "grpc_asyncio" +): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, ) - jsonified_request.update(unset_fields) - # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_versions), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) + ) + response = await client.list_goldengate_deployment_versions(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + request = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest() + ) + assert args[0] == request + + # Establish that the response is the type that we expect. + assert isinstance(response, pagers.ListGoldengateDeploymentVersionsAsyncPager) + assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] + +def test_list_goldengate_deployment_versions_field_headers(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - request = request_type(**request_init) - - # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListGiVersionsResponse() - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "get", - "query_params": pb_request, - } - transcode.return_value = transcode_result - response_value = Response() - response_value.status_code = 200 + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest() - # Convert return value to protobuf type - return_value = oracledatabase.ListGiVersionsResponse.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) + request.parent = "parent_value" - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_versions), "__call__" + ) as call: + call.return_value = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse() + ) + client.list_goldengate_deployment_versions(request) - response = client.list_gi_versions(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert args[0] == request - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "parent=parent_value", + ) in kw["metadata"] -def test_list_gi_versions_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials +@pytest.mark.asyncio +async def test_list_goldengate_deployment_versions_field_headers_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - unset_fields = transport.list_gi_versions._get_unset_required_fields({}) - assert set(unset_fields) == ( - set( - ( - "filter", - "pageSize", - "pageToken", - ) + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest() + + request.parent = "parent_value" + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_versions), "__call__" + ) as call: + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse() ) - & set(("parent",)) - ) + await client.list_goldengate_deployment_versions(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert args[0] == request -def test_list_gi_versions_rest_flattened(): + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "parent=parent_value", + ) in kw["metadata"] + + +def test_list_goldengate_deployment_versions_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListGiVersionsResponse() - - # get arguments that satisfy an http rule for this method - sample_request = {"parent": "projects/sample1/locations/sample2"} - - # get truthy value for each flattened field - mock_args = dict( + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_versions), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse() + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + client.list_goldengate_deployment_versions( parent="parent_value", ) - mock_args.update(sample_request) - - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - # Convert return value to protobuf type - return_value = oracledatabase.ListGiVersionsResponse.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - - client.list_gi_versions(**mock_args) # Establish that the underlying call was made with the expected # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*}/giVersions" % client.transport._host, - args[1], - ) + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + arg = args[0].parent + mock_val = "parent_value" + assert arg == mock_val -def test_list_gi_versions_rest_flattened_error(transport: str = "rest"): +def test_list_goldengate_deployment_versions_flattened_error(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport=transport, ) # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.list_gi_versions( - oracledatabase.ListGiVersionsRequest(), + client.list_goldengate_deployment_versions( + goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest(), parent="parent_value", ) -def test_list_gi_versions_rest_pager(transport: str = "rest"): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, +@pytest.mark.asyncio +async def test_list_goldengate_deployment_versions_flattened_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # TODO(kbandes): remove this mock unless there's a good reason for it. - # with mock.patch.object(path_template, 'transcode') as transcode: - # Set the response as a series of pages - response = ( - oracledatabase.ListGiVersionsResponse( - gi_versions=[ - gi_version.GiVersion(), - gi_version.GiVersion(), - gi_version.GiVersion(), + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_versions), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse() + ) + + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse() + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + response = await client.list_goldengate_deployment_versions( + parent="parent_value", + ) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + arg = args[0].parent + mock_val = "parent_value" + assert arg == mock_val + + +@pytest.mark.asyncio +async def test_list_goldengate_deployment_versions_flattened_error_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + await client.list_goldengate_deployment_versions( + goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest(), + parent="parent_value", + ) + + +def test_list_goldengate_deployment_versions_pager(transport_name: str = "grpc"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport_name, + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_versions), "__call__" + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse( + goldengate_deployment_versions=[ + goldengate_deployment_version.GoldengateDeploymentVersion(), + goldengate_deployment_version.GoldengateDeploymentVersion(), + goldengate_deployment_version.GoldengateDeploymentVersion(), ], next_page_token="abc", ), - oracledatabase.ListGiVersionsResponse( - gi_versions=[], + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse( + goldengate_deployment_versions=[], next_page_token="def", ), - oracledatabase.ListGiVersionsResponse( - gi_versions=[ - gi_version.GiVersion(), + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse( + goldengate_deployment_versions=[ + goldengate_deployment_version.GoldengateDeploymentVersion(), ], next_page_token="ghi", ), - oracledatabase.ListGiVersionsResponse( - gi_versions=[ - gi_version.GiVersion(), - gi_version.GiVersion(), + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse( + goldengate_deployment_versions=[ + goldengate_deployment_version.GoldengateDeploymentVersion(), + goldengate_deployment_version.GoldengateDeploymentVersion(), ], ), + RuntimeError, ) - # Two responses for two calls - response = response + response - # Wrap the values into proper Response objs - response = tuple( - oracledatabase.ListGiVersionsResponse.to_json(x) for x in response + expected_metadata = () + retry = retries.Retry() + timeout = 5 + expected_metadata = tuple(expected_metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", ""),)), + ) + pager = client.list_goldengate_deployment_versions( + request={}, retry=retry, timeout=timeout ) - return_values = tuple(Response() for i in response) - for return_val, response_val in zip(return_values, response): - return_val._content = response_val.encode("UTF-8") - return_val.status_code = 200 - req.side_effect = return_values - - sample_request = {"parent": "projects/sample1/locations/sample2"} - pager = client.list_gi_versions(request=sample_request) + assert pager._metadata == expected_metadata + assert pager._retry == retry + assert pager._timeout == timeout results = list(pager) assert len(results) == 6 - assert all(isinstance(i, gi_version.GiVersion) for i in results) + assert all( + isinstance(i, goldengate_deployment_version.GoldengateDeploymentVersion) + for i in results + ) - pages = list(client.list_gi_versions(request=sample_request).pages) + +def test_list_goldengate_deployment_versions_pages(transport_name: str = "grpc"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport_name, + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_versions), "__call__" + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse( + goldengate_deployment_versions=[ + goldengate_deployment_version.GoldengateDeploymentVersion(), + goldengate_deployment_version.GoldengateDeploymentVersion(), + goldengate_deployment_version.GoldengateDeploymentVersion(), + ], + next_page_token="abc", + ), + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse( + goldengate_deployment_versions=[], + next_page_token="def", + ), + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse( + goldengate_deployment_versions=[ + goldengate_deployment_version.GoldengateDeploymentVersion(), + ], + next_page_token="ghi", + ), + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse( + goldengate_deployment_versions=[ + goldengate_deployment_version.GoldengateDeploymentVersion(), + goldengate_deployment_version.GoldengateDeploymentVersion(), + ], + ), + RuntimeError, + ) + pages = list(client.list_goldengate_deployment_versions(request={}).pages) for page_, token in zip(pages, ["abc", "def", "ghi", ""]): assert page_.raw_page.next_page_token == token -def test_list_minor_versions_rest_use_cached_wrapped_rpc(): +@pytest.mark.asyncio +async def test_list_goldengate_deployment_versions_async_pager(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_versions), + "__call__", + new_callable=mock.AsyncMock, + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse( + goldengate_deployment_versions=[ + goldengate_deployment_version.GoldengateDeploymentVersion(), + goldengate_deployment_version.GoldengateDeploymentVersion(), + goldengate_deployment_version.GoldengateDeploymentVersion(), + ], + next_page_token="abc", + ), + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse( + goldengate_deployment_versions=[], + next_page_token="def", + ), + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse( + goldengate_deployment_versions=[ + goldengate_deployment_version.GoldengateDeploymentVersion(), + ], + next_page_token="ghi", + ), + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse( + goldengate_deployment_versions=[ + goldengate_deployment_version.GoldengateDeploymentVersion(), + goldengate_deployment_version.GoldengateDeploymentVersion(), + ], + ), + RuntimeError, + ) + async_pager = await client.list_goldengate_deployment_versions( + request={}, + ) + assert async_pager.next_page_token == "abc" + responses = [] + async for response in async_pager: # pragma: no branch + responses.append(response) + + assert len(responses) == 6 + assert all( + isinstance(i, goldengate_deployment_version.GoldengateDeploymentVersion) + for i in responses + ) + + +@pytest.mark.asyncio +async def test_list_goldengate_deployment_versions_async_pages(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_versions), + "__call__", + new_callable=mock.AsyncMock, + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse( + goldengate_deployment_versions=[ + goldengate_deployment_version.GoldengateDeploymentVersion(), + goldengate_deployment_version.GoldengateDeploymentVersion(), + goldengate_deployment_version.GoldengateDeploymentVersion(), + ], + next_page_token="abc", + ), + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse( + goldengate_deployment_versions=[], + next_page_token="def", + ), + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse( + goldengate_deployment_versions=[ + goldengate_deployment_version.GoldengateDeploymentVersion(), + ], + next_page_token="ghi", + ), + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse( + goldengate_deployment_versions=[ + goldengate_deployment_version.GoldengateDeploymentVersion(), + goldengate_deployment_version.GoldengateDeploymentVersion(), + ], + ), + RuntimeError, + ) + pages = [] + async for page_ in ( + await client.list_goldengate_deployment_versions(request={}) + ).pages: + pages.append(page_) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token + + +@pytest.mark.parametrize( + "request_type", + [ + goldengate_deployment_type.GetGoldengateDeploymentTypeRequest(), + {}, + ], +) +def test_get_goldengate_deployment_type(request_type, transport: str = "grpc"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_type), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = goldengate_deployment_type.GoldengateDeploymentType( + name="name_value", + deployment_type=goldengate_deployment_type.GoldengateDeploymentType.DeploymentType.OGG, + category=goldengate_deployment_type.GoldengateDeploymentType.DeploymentCategory.DATA_REPLICATION_CATEGORY, + connection_types=["connection_types_value"], + display_name="display_name_value", + ogg_version="ogg_version_value", + source_technologies=["source_technologies_value"], + supported_capabilities=["supported_capabilities_value"], + supported_technologies_url="supported_technologies_url_value", + target_technologies=["target_technologies_value"], + default_username="default_username_value", + ) + response = client.get_goldengate_deployment_type(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + request = goldengate_deployment_type.GetGoldengateDeploymentTypeRequest() + assert args[0] == request + + # Establish that the response is the type that we expect. + assert isinstance(response, goldengate_deployment_type.GoldengateDeploymentType) + assert response.name == "name_value" + assert ( + response.deployment_type + == goldengate_deployment_type.GoldengateDeploymentType.DeploymentType.OGG + ) + assert ( + response.category + == goldengate_deployment_type.GoldengateDeploymentType.DeploymentCategory.DATA_REPLICATION_CATEGORY + ) + assert response.connection_types == ["connection_types_value"] + assert response.display_name == "display_name_value" + assert response.ogg_version == "ogg_version_value" + assert response.source_technologies == ["source_technologies_value"] + assert response.supported_capabilities == ["supported_capabilities_value"] + assert response.supported_technologies_url == "supported_technologies_url_value" + assert response.target_technologies == ["target_technologies_value"] + assert response.default_username == "default_username_value" + + +def test_get_goldengate_deployment_type_non_empty_request_with_auto_populated_field(): + # This test is a coverage failsafe to make sure that UUID4 fields are + # automatically populated, according to AIP-4235, with non-empty requests. + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Populate all string fields in the request which are not UUID4 + # since we want to check that UUID4 are populated automatically + # if they meet the requirements of AIP 4235. + request = goldengate_deployment_type.GetGoldengateDeploymentTypeRequest( + name="name_value", + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_type), "__call__" + ) as call: + call.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client.get_goldengate_deployment_type(request=request) + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment_type.GetGoldengateDeploymentTypeRequest( + name="name_value", + ) + assert args[0] == request_msg + + +def test_get_goldengate_deployment_type_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport="grpc", ) # Should wrap all calls on client creation @@ -29043,7 +30263,8 @@ def test_list_minor_versions_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.list_minor_versions in client._transport._wrapped_methods + client._transport.get_goldengate_deployment_type + in client._transport._wrapped_methods ) # Replace cached wrapped function with mock @@ -29051,256 +30272,370 @@ def test_list_minor_versions_rest_use_cached_wrapped_rpc(): mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.list_minor_versions] = ( - mock_rpc - ) - + client._transport._wrapped_methods[ + client._transport.get_goldengate_deployment_type + ] = mock_rpc request = {} - client.list_minor_versions(request) + client.get_goldengate_deployment_type(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_minor_versions(request) + client.get_goldengate_deployment_type(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_list_minor_versions_rest_required_fields( - request_type=minor_version.ListMinorVersionsRequest, +@pytest.mark.asyncio +async def test_get_goldengate_deployment_type_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", ): - transport_class = transports.OracleDatabaseRestTransport + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) - request_init = {} - request_init["parent"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) - ) + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() - # verify fields with default values are dropped + # Ensure method has been cached + assert ( + client._client._transport.get_goldengate_deployment_type + in client._client._transport._wrapped_methods + ) - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).list_minor_versions._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + # Replace cached wrapped function with mock + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.get_goldengate_deployment_type + ] = mock_rpc - # verify required fields with default values are now present + request = {} + await client.get_goldengate_deployment_type(request) - jsonified_request["parent"] = "parent_value" + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).list_minor_versions._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "filter", - "page_size", - "page_token", + await client.get_goldengate_deployment_type(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + goldengate_deployment_type.GetGoldengateDeploymentTypeRequest(), + {}, + ], +) +async def test_get_goldengate_deployment_type_async( + request_type, transport: str = "grpc_asyncio" +): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) + + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_type), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_deployment_type.GoldengateDeploymentType( + name="name_value", + deployment_type=goldengate_deployment_type.GoldengateDeploymentType.DeploymentType.OGG, + category=goldengate_deployment_type.GoldengateDeploymentType.DeploymentCategory.DATA_REPLICATION_CATEGORY, + connection_types=["connection_types_value"], + display_name="display_name_value", + ogg_version="ogg_version_value", + source_technologies=["source_technologies_value"], + supported_capabilities=["supported_capabilities_value"], + supported_technologies_url="supported_technologies_url_value", + target_technologies=["target_technologies_value"], + default_username="default_username_value", + ) ) + response = await client.get_goldengate_deployment_type(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + request = goldengate_deployment_type.GetGoldengateDeploymentTypeRequest() + assert args[0] == request + + # Establish that the response is the type that we expect. + assert isinstance(response, goldengate_deployment_type.GoldengateDeploymentType) + assert response.name == "name_value" + assert ( + response.deployment_type + == goldengate_deployment_type.GoldengateDeploymentType.DeploymentType.OGG ) - jsonified_request.update(unset_fields) + assert ( + response.category + == goldengate_deployment_type.GoldengateDeploymentType.DeploymentCategory.DATA_REPLICATION_CATEGORY + ) + assert response.connection_types == ["connection_types_value"] + assert response.display_name == "display_name_value" + assert response.ogg_version == "ogg_version_value" + assert response.source_technologies == ["source_technologies_value"] + assert response.supported_capabilities == ["supported_capabilities_value"] + assert response.supported_technologies_url == "supported_technologies_url_value" + assert response.target_technologies == ["target_technologies_value"] + assert response.default_username == "default_username_value" - # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" +def test_get_goldengate_deployment_type_field_headers(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - request = request_type(**request_init) - # Designate an appropriate value for the returned response. - return_value = minor_version.ListMinorVersionsResponse() - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "get", - "query_params": pb_request, - } - transcode.return_value = transcode_result - - response_value = Response() - response_value.status_code = 200 + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = goldengate_deployment_type.GetGoldengateDeploymentTypeRequest() - # Convert return value to protobuf type - return_value = minor_version.ListMinorVersionsResponse.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) + request.name = "name_value" - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_type), "__call__" + ) as call: + call.return_value = goldengate_deployment_type.GoldengateDeploymentType() + client.get_goldengate_deployment_type(request) - response = client.list_minor_versions(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert args[0] == request - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "name=name_value", + ) in kw["metadata"] -def test_list_minor_versions_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials +@pytest.mark.asyncio +async def test_get_goldengate_deployment_type_field_headers_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - unset_fields = transport.list_minor_versions._get_unset_required_fields({}) - assert set(unset_fields) == ( - set( - ( - "filter", - "pageSize", - "pageToken", - ) + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = goldengate_deployment_type.GetGoldengateDeploymentTypeRequest() + + request.name = "name_value" + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_type), "__call__" + ) as call: + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_deployment_type.GoldengateDeploymentType() ) - & set(("parent",)) - ) + await client.get_goldengate_deployment_type(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert args[0] == request -def test_list_minor_versions_rest_flattened(): + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "name=name_value", + ) in kw["metadata"] + + +def test_get_goldengate_deployment_type_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = minor_version.ListMinorVersionsResponse() - - # get arguments that satisfy an http rule for this method - sample_request = { - "parent": "projects/sample1/locations/sample2/giVersions/sample3" - } - - # get truthy value for each flattened field - mock_args = dict( - parent="parent_value", + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_type), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = goldengate_deployment_type.GoldengateDeploymentType() + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + client.get_goldengate_deployment_type( + name="name_value", ) - mock_args.update(sample_request) - - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - # Convert return value to protobuf type - return_value = minor_version.ListMinorVersionsResponse.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - - client.list_minor_versions(**mock_args) # Establish that the underlying call was made with the expected # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*/giVersions/*}/minorVersions" - % client.transport._host, - args[1], - ) + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + arg = args[0].name + mock_val = "name_value" + assert arg == mock_val -def test_list_minor_versions_rest_flattened_error(transport: str = "rest"): +def test_get_goldengate_deployment_type_flattened_error(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport=transport, ) # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.list_minor_versions( - minor_version.ListMinorVersionsRequest(), - parent="parent_value", + client.get_goldengate_deployment_type( + goldengate_deployment_type.GetGoldengateDeploymentTypeRequest(), + name="name_value", ) -def test_list_minor_versions_rest_pager(transport: str = "rest"): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, +@pytest.mark.asyncio +async def test_get_goldengate_deployment_type_flattened_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # TODO(kbandes): remove this mock unless there's a good reason for it. - # with mock.patch.object(path_template, 'transcode') as transcode: - # Set the response as a series of pages - response = ( - minor_version.ListMinorVersionsResponse( - minor_versions=[ - minor_version.MinorVersion(), - minor_version.MinorVersion(), - minor_version.MinorVersion(), - ], - next_page_token="abc", - ), - minor_version.ListMinorVersionsResponse( - minor_versions=[], - next_page_token="def", - ), - minor_version.ListMinorVersionsResponse( - minor_versions=[ - minor_version.MinorVersion(), - ], - next_page_token="ghi", - ), - minor_version.ListMinorVersionsResponse( - minor_versions=[ - minor_version.MinorVersion(), - minor_version.MinorVersion(), - ], - ), + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_type), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = goldengate_deployment_type.GoldengateDeploymentType() + + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_deployment_type.GoldengateDeploymentType() + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + response = await client.get_goldengate_deployment_type( + name="name_value", ) - # Two responses for two calls - response = response + response - # Wrap the values into proper Response objs - response = tuple( - minor_version.ListMinorVersionsResponse.to_json(x) for x in response + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + arg = args[0].name + mock_val = "name_value" + assert arg == mock_val + + +@pytest.mark.asyncio +async def test_get_goldengate_deployment_type_flattened_error_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + await client.get_goldengate_deployment_type( + goldengate_deployment_type.GetGoldengateDeploymentTypeRequest(), + name="name_value", ) - return_values = tuple(Response() for i in response) - for return_val, response_val in zip(return_values, response): - return_val._content = response_val.encode("UTF-8") - return_val.status_code = 200 - req.side_effect = return_values - sample_request = { - "parent": "projects/sample1/locations/sample2/giVersions/sample3" - } - pager = client.list_minor_versions(request=sample_request) +@pytest.mark.parametrize( + "request_type", + [ + goldengate_deployment_type.ListGoldengateDeploymentTypesRequest(), + {}, + ], +) +def test_list_goldengate_deployment_types(request_type, transport: str = "grpc"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) - results = list(pager) - assert len(results) == 6 - assert all(isinstance(i, minor_version.MinorVersion) for i in results) + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type - pages = list(client.list_minor_versions(request=sample_request).pages) - for page_, token in zip(pages, ["abc", "def", "ghi", ""]): - assert page_.raw_page.next_page_token == token + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_types), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = ( + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) + ) + response = client.list_goldengate_deployment_types(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + request = goldengate_deployment_type.ListGoldengateDeploymentTypesRequest() + assert args[0] == request -def test_list_db_system_shapes_rest_use_cached_wrapped_rpc(): + # Establish that the response is the type that we expect. + assert isinstance(response, pagers.ListGoldengateDeploymentTypesPager) + assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] + + +def test_list_goldengate_deployment_types_non_empty_request_with_auto_populated_field(): + # This test is a coverage failsafe to make sure that UUID4 fields are + # automatically populated, according to AIP-4235, with non-empty requests. + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Populate all string fields in the request which are not UUID4 + # since we want to check that UUID4 are populated automatically + # if they meet the requirements of AIP 4235. + request = goldengate_deployment_type.ListGoldengateDeploymentTypesRequest( + parent="parent_value", + page_token="page_token_value", + filter="filter_value", + order_by="order_by_value", + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_types), "__call__" + ) as call: + call.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client.list_goldengate_deployment_types(request=request) + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment_type.ListGoldengateDeploymentTypesRequest( + parent="parent_value", + page_token="page_token_value", + filter="filter_value", + order_by="order_by_value", + ) + assert args[0] == request_msg + + +def test_list_goldengate_deployment_types_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport="grpc", ) # Should wrap all calls on client creation @@ -29309,7 +30644,7 @@ def test_list_db_system_shapes_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.list_db_system_shapes + client._transport.list_goldengate_deployment_types in client._transport._wrapped_methods ) @@ -29318,521 +30653,582 @@ def test_list_db_system_shapes_rest_use_cached_wrapped_rpc(): mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.list_db_system_shapes] = ( - mock_rpc - ) - + client._transport._wrapped_methods[ + client._transport.list_goldengate_deployment_types + ] = mock_rpc request = {} - client.list_db_system_shapes(request) + client.list_goldengate_deployment_types(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_db_system_shapes(request) + client.list_goldengate_deployment_types(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_list_db_system_shapes_rest_required_fields( - request_type=oracledatabase.ListDbSystemShapesRequest, +@pytest.mark.asyncio +async def test_list_goldengate_deployment_types_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", ): - transport_class = transports.OracleDatabaseRestTransport + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) - request_init = {} - request_init["parent"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) - ) + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() - # verify fields with default values are dropped + # Ensure method has been cached + assert ( + client._client._transport.list_goldengate_deployment_types + in client._client._transport._wrapped_methods + ) - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).list_db_system_shapes._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + # Replace cached wrapped function with mock + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.list_goldengate_deployment_types + ] = mock_rpc - # verify required fields with default values are now present + request = {} + await client.list_goldengate_deployment_types(request) - jsonified_request["parent"] = "parent_value" + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).list_db_system_shapes._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "filter", - "page_size", - "page_token", - ) + await client.list_goldengate_deployment_types(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + goldengate_deployment_type.ListGoldengateDeploymentTypesRequest(), + {}, + ], +) +async def test_list_goldengate_deployment_types_async( + request_type, transport: str = "grpc_asyncio" +): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, ) - jsonified_request.update(unset_fields) - # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_types), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) + ) + response = await client.list_goldengate_deployment_types(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + request = goldengate_deployment_type.ListGoldengateDeploymentTypesRequest() + assert args[0] == request + + # Establish that the response is the type that we expect. + assert isinstance(response, pagers.ListGoldengateDeploymentTypesAsyncPager) + assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] + +def test_list_goldengate_deployment_types_field_headers(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - request = request_type(**request_init) - - # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListDbSystemShapesResponse() - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "get", - "query_params": pb_request, - } - transcode.return_value = transcode_result - response_value = Response() - response_value.status_code = 200 + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = goldengate_deployment_type.ListGoldengateDeploymentTypesRequest() - # Convert return value to protobuf type - return_value = oracledatabase.ListDbSystemShapesResponse.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) + request.parent = "parent_value" - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_types), "__call__" + ) as call: + call.return_value = ( + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse() + ) + client.list_goldengate_deployment_types(request) - response = client.list_db_system_shapes(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert args[0] == request - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "parent=parent_value", + ) in kw["metadata"] -def test_list_db_system_shapes_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials +@pytest.mark.asyncio +async def test_list_goldengate_deployment_types_field_headers_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - unset_fields = transport.list_db_system_shapes._get_unset_required_fields({}) - assert set(unset_fields) == ( - set( - ( - "filter", - "pageSize", - "pageToken", - ) + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = goldengate_deployment_type.ListGoldengateDeploymentTypesRequest() + + request.parent = "parent_value" + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_types), "__call__" + ) as call: + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse() ) - & set(("parent",)) - ) + await client.list_goldengate_deployment_types(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert args[0] == request -def test_list_db_system_shapes_rest_flattened(): + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "parent=parent_value", + ) in kw["metadata"] + + +def test_list_goldengate_deployment_types_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListDbSystemShapesResponse() + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_types), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = ( + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse() + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + client.list_goldengate_deployment_types( + parent="parent_value", + ) - # get arguments that satisfy an http rule for this method - sample_request = {"parent": "projects/sample1/locations/sample2"} + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + arg = args[0].parent + mock_val = "parent_value" + assert arg == mock_val - # get truthy value for each flattened field - mock_args = dict( + +def test_list_goldengate_deployment_types_flattened_error(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.list_goldengate_deployment_types( + goldengate_deployment_type.ListGoldengateDeploymentTypesRequest(), parent="parent_value", ) - mock_args.update(sample_request) - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - # Convert return value to protobuf type - return_value = oracledatabase.ListDbSystemShapesResponse.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_db_system_shapes(**mock_args) +@pytest.mark.asyncio +async def test_list_goldengate_deployment_types_flattened_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_types), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = ( + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse() + ) + + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse() + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + response = await client.list_goldengate_deployment_types( + parent="parent_value", + ) # Establish that the underlying call was made with the expected # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*}/dbSystemShapes" - % client.transport._host, - args[1], - ) + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + arg = args[0].parent + mock_val = "parent_value" + assert arg == mock_val -def test_list_db_system_shapes_rest_flattened_error(transport: str = "rest"): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, +@pytest.mark.asyncio +async def test_list_goldengate_deployment_types_flattened_error_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.list_db_system_shapes( - oracledatabase.ListDbSystemShapesRequest(), + await client.list_goldengate_deployment_types( + goldengate_deployment_type.ListGoldengateDeploymentTypesRequest(), parent="parent_value", ) -def test_list_db_system_shapes_rest_pager(transport: str = "rest"): +def test_list_goldengate_deployment_types_pager(transport_name: str = "grpc"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport=transport, + transport=transport_name, ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # TODO(kbandes): remove this mock unless there's a good reason for it. - # with mock.patch.object(path_template, 'transcode') as transcode: - # Set the response as a series of pages - response = ( - oracledatabase.ListDbSystemShapesResponse( - db_system_shapes=[ - db_system_shape.DbSystemShape(), - db_system_shape.DbSystemShape(), - db_system_shape.DbSystemShape(), + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_types), "__call__" + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse( + goldengate_deployment_types=[ + goldengate_deployment_type.GoldengateDeploymentType(), + goldengate_deployment_type.GoldengateDeploymentType(), + goldengate_deployment_type.GoldengateDeploymentType(), ], next_page_token="abc", ), - oracledatabase.ListDbSystemShapesResponse( - db_system_shapes=[], + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse( + goldengate_deployment_types=[], next_page_token="def", ), - oracledatabase.ListDbSystemShapesResponse( - db_system_shapes=[ - db_system_shape.DbSystemShape(), + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse( + goldengate_deployment_types=[ + goldengate_deployment_type.GoldengateDeploymentType(), ], next_page_token="ghi", ), - oracledatabase.ListDbSystemShapesResponse( - db_system_shapes=[ - db_system_shape.DbSystemShape(), - db_system_shape.DbSystemShape(), + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse( + goldengate_deployment_types=[ + goldengate_deployment_type.GoldengateDeploymentType(), + goldengate_deployment_type.GoldengateDeploymentType(), ], ), + RuntimeError, ) - # Two responses for two calls - response = response + response - # Wrap the values into proper Response objs - response = tuple( - oracledatabase.ListDbSystemShapesResponse.to_json(x) for x in response + expected_metadata = () + retry = retries.Retry() + timeout = 5 + expected_metadata = tuple(expected_metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", ""),)), + ) + pager = client.list_goldengate_deployment_types( + request={}, retry=retry, timeout=timeout ) - return_values = tuple(Response() for i in response) - for return_val, response_val in zip(return_values, response): - return_val._content = response_val.encode("UTF-8") - return_val.status_code = 200 - req.side_effect = return_values - - sample_request = {"parent": "projects/sample1/locations/sample2"} - pager = client.list_db_system_shapes(request=sample_request) + assert pager._metadata == expected_metadata + assert pager._retry == retry + assert pager._timeout == timeout results = list(pager) assert len(results) == 6 - assert all(isinstance(i, db_system_shape.DbSystemShape) for i in results) - - pages = list(client.list_db_system_shapes(request=sample_request).pages) - for page_, token in zip(pages, ["abc", "def", "ghi", ""]): - assert page_.raw_page.next_page_token == token - - -def test_list_autonomous_databases_rest_use_cached_wrapped_rpc(): - # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, - # instead of constructing them on each call - with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + assert all( + isinstance(i, goldengate_deployment_type.GoldengateDeploymentType) + for i in results ) - # Should wrap all calls on client creation - assert wrapper_fn.call_count > 0 - wrapper_fn.reset_mock() - # Ensure method has been cached - assert ( - client._transport.list_autonomous_databases - in client._transport._wrapped_methods - ) +def test_list_goldengate_deployment_types_pages(transport_name: str = "grpc"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport_name, + ) - # Replace cached wrapped function with mock - mock_rpc = mock.Mock() - mock_rpc.return_value.name = ( - "foo" # operation_request.operation in compute client(s) expect a string. + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_types), "__call__" + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse( + goldengate_deployment_types=[ + goldengate_deployment_type.GoldengateDeploymentType(), + goldengate_deployment_type.GoldengateDeploymentType(), + goldengate_deployment_type.GoldengateDeploymentType(), + ], + next_page_token="abc", + ), + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse( + goldengate_deployment_types=[], + next_page_token="def", + ), + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse( + goldengate_deployment_types=[ + goldengate_deployment_type.GoldengateDeploymentType(), + ], + next_page_token="ghi", + ), + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse( + goldengate_deployment_types=[ + goldengate_deployment_type.GoldengateDeploymentType(), + goldengate_deployment_type.GoldengateDeploymentType(), + ], + ), + RuntimeError, ) - client._transport._wrapped_methods[ - client._transport.list_autonomous_databases - ] = mock_rpc + pages = list(client.list_goldengate_deployment_types(request={}).pages) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token - request = {} - client.list_autonomous_databases(request) - # Establish that the underlying gRPC stub method was called. - assert mock_rpc.call_count == 1 - - client.list_autonomous_databases(request) - - # Establish that a new wrapper was not created for this call - assert wrapper_fn.call_count == 0 - assert mock_rpc.call_count == 2 - - -def test_list_autonomous_databases_rest_required_fields( - request_type=oracledatabase.ListAutonomousDatabasesRequest, -): - transport_class = transports.OracleDatabaseRestTransport - - request_init = {} - request_init["parent"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) +@pytest.mark.asyncio +async def test_list_goldengate_deployment_types_async_pager(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - # verify fields with default values are dropped - - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).list_autonomous_databases._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) - - # verify required fields with default values are now present - - jsonified_request["parent"] = "parent_value" - - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).list_autonomous_databases._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "filter", - "order_by", - "page_size", - "page_token", + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_types), + "__call__", + new_callable=mock.AsyncMock, + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse( + goldengate_deployment_types=[ + goldengate_deployment_type.GoldengateDeploymentType(), + goldengate_deployment_type.GoldengateDeploymentType(), + goldengate_deployment_type.GoldengateDeploymentType(), + ], + next_page_token="abc", + ), + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse( + goldengate_deployment_types=[], + next_page_token="def", + ), + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse( + goldengate_deployment_types=[ + goldengate_deployment_type.GoldengateDeploymentType(), + ], + next_page_token="ghi", + ), + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse( + goldengate_deployment_types=[ + goldengate_deployment_type.GoldengateDeploymentType(), + goldengate_deployment_type.GoldengateDeploymentType(), + ], + ), + RuntimeError, ) - ) - jsonified_request.update(unset_fields) - - # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" - - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", - ) - request = request_type(**request_init) - - # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListAutonomousDatabasesResponse() - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "get", - "query_params": pb_request, - } - transcode.return_value = transcode_result - - response_value = Response() - response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = oracledatabase.ListAutonomousDatabasesResponse.pb( - return_value - ) - json_return_value = json_format.MessageToJson(return_value) - - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - - response = client.list_autonomous_databases(request) + async_pager = await client.list_goldengate_deployment_types( + request={}, + ) + assert async_pager.next_page_token == "abc" + responses = [] + async for response in async_pager: # pragma: no branch + responses.append(response) - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) + assert len(responses) == 6 + assert all( + isinstance(i, goldengate_deployment_type.GoldengateDeploymentType) + for i in responses + ) -def test_list_autonomous_databases_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials +@pytest.mark.asyncio +async def test_list_goldengate_deployment_types_async_pages(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - unset_fields = transport.list_autonomous_databases._get_unset_required_fields({}) - assert set(unset_fields) == ( - set( - ( - "filter", - "orderBy", - "pageSize", - "pageToken", - ) + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_types), + "__call__", + new_callable=mock.AsyncMock, + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse( + goldengate_deployment_types=[ + goldengate_deployment_type.GoldengateDeploymentType(), + goldengate_deployment_type.GoldengateDeploymentType(), + goldengate_deployment_type.GoldengateDeploymentType(), + ], + next_page_token="abc", + ), + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse( + goldengate_deployment_types=[], + next_page_token="def", + ), + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse( + goldengate_deployment_types=[ + goldengate_deployment_type.GoldengateDeploymentType(), + ], + next_page_token="ghi", + ), + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse( + goldengate_deployment_types=[ + goldengate_deployment_type.GoldengateDeploymentType(), + goldengate_deployment_type.GoldengateDeploymentType(), + ], + ), + RuntimeError, ) - & set(("parent",)) - ) + pages = [] + async for page_ in ( + await client.list_goldengate_deployment_types(request={}) + ).pages: + pages.append(page_) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token -def test_list_autonomous_databases_rest_flattened(): +@pytest.mark.parametrize( + "request_type", + [ + goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest(), + {}, + ], +) +def test_get_goldengate_deployment_environment(request_type, transport: str = "grpc"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport=transport, ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListAutonomousDatabasesResponse() - - # get arguments that satisfy an http rule for this method - sample_request = {"parent": "projects/sample1/locations/sample2"} - - # get truthy value for each flattened field - mock_args = dict( - parent="parent_value", - ) - mock_args.update(sample_request) - - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - # Convert return value to protobuf type - return_value = oracledatabase.ListAutonomousDatabasesResponse.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - - client.list_autonomous_databases(**mock_args) + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type - # Establish that the underlying call was made with the expected - # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*}/autonomousDatabases" - % client.transport._host, - args[1], + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_environment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = goldengate_deployment_environment.GoldengateDeploymentEnvironment( + name="name_value", + category=goldengate_deployment_environment.GoldengateDeploymentEnvironment.DeploymentCategory.DATA_REPLICATION_CATEGORY, + display_name="display_name_value", + default_cpu_core_count=2332, + environment_type=goldengate_deployment_environment.GoldengateDeploymentEnvironment.DeploymentEnvironmentType.PRODUCTION, + auto_scaling_enabled=True, + max_cpu_core_count=1917, + memory_gb_per_cpu_core=2326, + min_cpu_core_count=1915, + network_bandwidth_gbps_per_cpu_core=3710, + storage_usage_limit_gb_per_cpu_core=3684, ) + response = client.get_goldengate_deployment_environment(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + request = goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest() + assert args[0] == request -def test_list_autonomous_databases_rest_flattened_error(transport: str = "rest"): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, + # Establish that the response is the type that we expect. + assert isinstance( + response, goldengate_deployment_environment.GoldengateDeploymentEnvironment ) - - # Attempting to call a method with both a request object and flattened - # fields is an error. - with pytest.raises(ValueError): - client.list_autonomous_databases( - oracledatabase.ListAutonomousDatabasesRequest(), - parent="parent_value", - ) + assert response.name == "name_value" + assert ( + response.category + == goldengate_deployment_environment.GoldengateDeploymentEnvironment.DeploymentCategory.DATA_REPLICATION_CATEGORY + ) + assert response.display_name == "display_name_value" + assert response.default_cpu_core_count == 2332 + assert ( + response.environment_type + == goldengate_deployment_environment.GoldengateDeploymentEnvironment.DeploymentEnvironmentType.PRODUCTION + ) + assert response.auto_scaling_enabled is True + assert response.max_cpu_core_count == 1917 + assert response.memory_gb_per_cpu_core == 2326 + assert response.min_cpu_core_count == 1915 + assert response.network_bandwidth_gbps_per_cpu_core == 3710 + assert response.storage_usage_limit_gb_per_cpu_core == 3684 -def test_list_autonomous_databases_rest_pager(transport: str = "rest"): +def test_get_goldengate_deployment_environment_non_empty_request_with_auto_populated_field(): + # This test is a coverage failsafe to make sure that UUID4 fields are + # automatically populated, according to AIP-4235, with non-empty requests. client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport=transport, + transport="grpc", ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # TODO(kbandes): remove this mock unless there's a good reason for it. - # with mock.patch.object(path_template, 'transcode') as transcode: - # Set the response as a series of pages - response = ( - oracledatabase.ListAutonomousDatabasesResponse( - autonomous_databases=[ - autonomous_database.AutonomousDatabase(), - autonomous_database.AutonomousDatabase(), - autonomous_database.AutonomousDatabase(), - ], - next_page_token="abc", - ), - oracledatabase.ListAutonomousDatabasesResponse( - autonomous_databases=[], - next_page_token="def", - ), - oracledatabase.ListAutonomousDatabasesResponse( - autonomous_databases=[ - autonomous_database.AutonomousDatabase(), - ], - next_page_token="ghi", - ), - oracledatabase.ListAutonomousDatabasesResponse( - autonomous_databases=[ - autonomous_database.AutonomousDatabase(), - autonomous_database.AutonomousDatabase(), - ], - ), + # Populate all string fields in the request which are not UUID4 + # since we want to check that UUID4 are populated automatically + # if they meet the requirements of AIP 4235. + request = ( + goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest( + name="name_value", ) - # Two responses for two calls - response = response + response + ) - # Wrap the values into proper Response objs - response = tuple( - oracledatabase.ListAutonomousDatabasesResponse.to_json(x) for x in response + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_environment), "__call__" + ) as call: + call.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. ) - return_values = tuple(Response() for i in response) - for return_val, response_val in zip(return_values, response): - return_val._content = response_val.encode("UTF-8") - return_val.status_code = 200 - req.side_effect = return_values - - sample_request = {"parent": "projects/sample1/locations/sample2"} - - pager = client.list_autonomous_databases(request=sample_request) - - results = list(pager) - assert len(results) == 6 - assert all( - isinstance(i, autonomous_database.AutonomousDatabase) for i in results + client.get_goldengate_deployment_environment(request=request) + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = ( + goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest( + name="name_value", + ) ) - - pages = list(client.list_autonomous_databases(request=sample_request).pages) - for page_, token in zip(pages, ["abc", "def", "ghi", ""]): - assert page_.raw_page.next_page_token == token + assert args[0] == request_msg -def test_get_autonomous_database_rest_use_cached_wrapped_rpc(): +def test_get_goldengate_deployment_environment_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport="grpc", ) # Should wrap all calls on client creation @@ -29841,7 +31237,7 @@ def test_get_autonomous_database_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.get_autonomous_database + client._transport.get_goldengate_deployment_environment in client._transport._wrapped_methods ) @@ -29851,401 +31247,377 @@ def test_get_autonomous_database_rest_use_cached_wrapped_rpc(): "foo" # operation_request.operation in compute client(s) expect a string. ) client._transport._wrapped_methods[ - client._transport.get_autonomous_database + client._transport.get_goldengate_deployment_environment ] = mock_rpc - request = {} - client.get_autonomous_database(request) + client.get_goldengate_deployment_environment(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.get_autonomous_database(request) + client.get_goldengate_deployment_environment(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_get_autonomous_database_rest_required_fields( - request_type=oracledatabase.GetAutonomousDatabaseRequest, +@pytest.mark.asyncio +async def test_get_goldengate_deployment_environment_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", ): - transport_class = transports.OracleDatabaseRestTransport - - request_init = {} - request_init["name"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) - ) - - # verify fields with default values are dropped - - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).get_autonomous_database._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) - # verify required fields with default values are now present + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() - jsonified_request["name"] = "name_value" + # Ensure method has been cached + assert ( + client._client._transport.get_goldengate_deployment_environment + in client._client._transport._wrapped_methods + ) - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).get_autonomous_database._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + # Replace cached wrapped function with mock + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.get_goldengate_deployment_environment + ] = mock_rpc - # verify required fields with non-default values are left alone - assert "name" in jsonified_request - assert jsonified_request["name"] == "name_value" + request = {} + await client.get_goldengate_deployment_environment(request) - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", - ) - request = request_type(**request_init) + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 - # Designate an appropriate value for the returned response. - return_value = autonomous_database.AutonomousDatabase() - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "get", - "query_params": pb_request, - } - transcode.return_value = transcode_result + await client.get_goldengate_deployment_environment(request) - response_value = Response() - response_value.status_code = 200 + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 - # Convert return value to protobuf type - return_value = autonomous_database.AutonomousDatabase.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest(), + {}, + ], +) +async def test_get_goldengate_deployment_environment_async( + request_type, transport: str = "grpc_asyncio" +): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) - response = client.get_autonomous_database(request) + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_environment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_deployment_environment.GoldengateDeploymentEnvironment( + name="name_value", + category=goldengate_deployment_environment.GoldengateDeploymentEnvironment.DeploymentCategory.DATA_REPLICATION_CATEGORY, + display_name="display_name_value", + default_cpu_core_count=2332, + environment_type=goldengate_deployment_environment.GoldengateDeploymentEnvironment.DeploymentEnvironmentType.PRODUCTION, + auto_scaling_enabled=True, + max_cpu_core_count=1917, + memory_gb_per_cpu_core=2326, + min_cpu_core_count=1915, + network_bandwidth_gbps_per_cpu_core=3710, + storage_usage_limit_gb_per_cpu_core=3684, + ) + ) + response = await client.get_goldengate_deployment_environment(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + request = goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest() + assert args[0] == request -def test_get_autonomous_database_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials + # Establish that the response is the type that we expect. + assert isinstance( + response, goldengate_deployment_environment.GoldengateDeploymentEnvironment ) - - unset_fields = transport.get_autonomous_database._get_unset_required_fields({}) - assert set(unset_fields) == (set(()) & set(("name",))) + assert response.name == "name_value" + assert ( + response.category + == goldengate_deployment_environment.GoldengateDeploymentEnvironment.DeploymentCategory.DATA_REPLICATION_CATEGORY + ) + assert response.display_name == "display_name_value" + assert response.default_cpu_core_count == 2332 + assert ( + response.environment_type + == goldengate_deployment_environment.GoldengateDeploymentEnvironment.DeploymentEnvironmentType.PRODUCTION + ) + assert response.auto_scaling_enabled is True + assert response.max_cpu_core_count == 1917 + assert response.memory_gb_per_cpu_core == 2326 + assert response.min_cpu_core_count == 1915 + assert response.network_bandwidth_gbps_per_cpu_core == 3710 + assert response.storage_usage_limit_gb_per_cpu_core == 3684 -def test_get_autonomous_database_rest_flattened(): +def test_get_goldengate_deployment_environment_field_headers(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = autonomous_database.AutonomousDatabase() + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = ( + goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest() + ) - # get arguments that satisfy an http rule for this method - sample_request = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" - } + request.name = "name_value" - # get truthy value for each flattened field - mock_args = dict( - name="name_value", + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_environment), "__call__" + ) as call: + call.return_value = ( + goldengate_deployment_environment.GoldengateDeploymentEnvironment() ) - mock_args.update(sample_request) + client.get_goldengate_deployment_environment(request) - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - # Convert return value to protobuf type - return_value = autonomous_database.AutonomousDatabase.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert args[0] == request - client.get_autonomous_database(**mock_args) + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "name=name_value", + ) in kw["metadata"] - # Establish that the underlying call was made with the expected - # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{name=projects/*/locations/*/autonomousDatabases/*}" - % client.transport._host, - args[1], - ) +@pytest.mark.asyncio +async def test_get_goldengate_deployment_environment_field_headers_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) -def test_get_autonomous_database_rest_flattened_error(transport: str = "rest"): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = ( + goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest() ) - # Attempting to call a method with both a request object and flattened - # fields is an error. - with pytest.raises(ValueError): - client.get_autonomous_database( - oracledatabase.GetAutonomousDatabaseRequest(), - name="name_value", - ) - - -def test_create_autonomous_database_rest_use_cached_wrapped_rpc(): - # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, - # instead of constructing them on each call - with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", - ) - - # Should wrap all calls on client creation - assert wrapper_fn.call_count > 0 - wrapper_fn.reset_mock() - - # Ensure method has been cached - assert ( - client._transport.create_autonomous_database - in client._transport._wrapped_methods - ) + request.name = "name_value" - # Replace cached wrapped function with mock - mock_rpc = mock.Mock() - mock_rpc.return_value.name = ( - "foo" # operation_request.operation in compute client(s) expect a string. + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_environment), "__call__" + ) as call: + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_deployment_environment.GoldengateDeploymentEnvironment() ) - client._transport._wrapped_methods[ - client._transport.create_autonomous_database - ] = mock_rpc - - request = {} - client.create_autonomous_database(request) + await client.get_goldengate_deployment_environment(request) # Establish that the underlying gRPC stub method was called. - assert mock_rpc.call_count == 1 - - # Operation methods build a cached wrapper on first rpc call - # subsequent calls should use the cached wrapper - wrapper_fn.reset_mock() - - client.create_autonomous_database(request) - - # Establish that a new wrapper was not created for this call - assert wrapper_fn.call_count == 0 - assert mock_rpc.call_count == 2 - - -def test_create_autonomous_database_rest_required_fields( - request_type=oracledatabase.CreateAutonomousDatabaseRequest, -): - transport_class = transports.OracleDatabaseRestTransport - - request_init = {} - request_init["parent"] = "" - request_init["autonomous_database_id"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) - ) + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert args[0] == request - # verify fields with default values are dropped - assert "autonomousDatabaseId" not in jsonified_request + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "name=name_value", + ) in kw["metadata"] - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).create_autonomous_database._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) - # verify required fields with default values are now present - assert "autonomousDatabaseId" in jsonified_request - assert ( - jsonified_request["autonomousDatabaseId"] - == request_init["autonomous_database_id"] +def test_get_goldengate_deployment_environment_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), ) - jsonified_request["parent"] = "parent_value" - jsonified_request["autonomousDatabaseId"] = "autonomous_database_id_value" - - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).create_autonomous_database._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "autonomous_database_id", - "request_id", + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_environment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = ( + goldengate_deployment_environment.GoldengateDeploymentEnvironment() + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + client.get_goldengate_deployment_environment( + name="name_value", ) - ) - jsonified_request.update(unset_fields) - # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" - assert "autonomousDatabaseId" in jsonified_request - assert jsonified_request["autonomousDatabaseId"] == "autonomous_database_id_value" + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + arg = args[0].name + mock_val = "name_value" + assert arg == mock_val + +def test_get_goldengate_deployment_environment_flattened_error(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - request = request_type(**request_init) - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "post", - "query_params": pb_request, - } - transcode_result["body"] = pb_request - transcode.return_value = transcode_result + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.get_goldengate_deployment_environment( + goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest(), + name="name_value", + ) - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} +@pytest.mark.asyncio +async def test_get_goldengate_deployment_environment_flattened_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) - response = client.create_autonomous_database(request) + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_environment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = ( + goldengate_deployment_environment.GoldengateDeploymentEnvironment() + ) - expected_params = [ - ( - "autonomousDatabaseId", - "", - ), - ("$alt", "json;enum-encoding=int"), - ] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_deployment_environment.GoldengateDeploymentEnvironment() + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + response = await client.get_goldengate_deployment_environment( + name="name_value", + ) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + arg = args[0].name + mock_val = "name_value" + assert arg == mock_val -def test_create_autonomous_database_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials +@pytest.mark.asyncio +async def test_get_goldengate_deployment_environment_flattened_error_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - unset_fields = transport.create_autonomous_database._get_unset_required_fields({}) - assert set(unset_fields) == ( - set( - ( - "autonomousDatabaseId", - "requestId", - ) - ) - & set( - ( - "parent", - "autonomousDatabaseId", - "autonomousDatabase", - ) + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + await client.get_goldengate_deployment_environment( + goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest(), + name="name_value", ) - ) -def test_create_autonomous_database_rest_flattened(): +@pytest.mark.parametrize( + "request_type", + [ + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest(), + {}, + ], +) +def test_list_goldengate_deployment_environments(request_type, transport: str = "grpc"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport=transport, ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - - # get arguments that satisfy an http rule for this method - sample_request = {"parent": "projects/sample1/locations/sample2"} + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type - # get truthy value for each flattened field - mock_args = dict( - parent="parent_value", - autonomous_database=gco_autonomous_database.AutonomousDatabase( - name="name_value" - ), - autonomous_database_id="autonomous_database_id_value", + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_environments), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], ) - mock_args.update(sample_request) - - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.list_goldengate_deployment_environments(request) - client.create_autonomous_database(**mock_args) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + request = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest() + assert args[0] == request - # Establish that the underlying call was made with the expected - # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*}/autonomousDatabases" - % client.transport._host, - args[1], - ) + # Establish that the response is the type that we expect. + assert isinstance(response, pagers.ListGoldengateDeploymentEnvironmentsPager) + assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] -def test_create_autonomous_database_rest_flattened_error(transport: str = "rest"): +def test_list_goldengate_deployment_environments_non_empty_request_with_auto_populated_field(): + # This test is a coverage failsafe to make sure that UUID4 fields are + # automatically populated, according to AIP-4235, with non-empty requests. client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport=transport, + transport="grpc", ) - # Attempting to call a method with both a request object and flattened - # fields is an error. - with pytest.raises(ValueError): - client.create_autonomous_database( - oracledatabase.CreateAutonomousDatabaseRequest(), + # Populate all string fields in the request which are not UUID4 + # since we want to check that UUID4 are populated automatically + # if they meet the requirements of AIP 4235. + request = ( + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest( parent="parent_value", - autonomous_database=gco_autonomous_database.AutonomousDatabase( - name="name_value" - ), - autonomous_database_id="autonomous_database_id_value", + page_token="page_token_value", + ) + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_environments), "__call__" + ) as call: + call.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client.list_goldengate_deployment_environments(request=request) + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest( + parent="parent_value", + page_token="page_token_value", ) + assert args[0] == request_msg -def test_update_autonomous_database_rest_use_cached_wrapped_rpc(): +def test_list_goldengate_deployment_environments_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport="grpc", ) # Should wrap all calls on client creation @@ -30254,7 +31626,7 @@ def test_update_autonomous_database_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.update_autonomous_database + client._transport.list_goldengate_deployment_environments in client._transport._wrapped_methods ) @@ -30264,377 +31636,558 @@ def test_update_autonomous_database_rest_use_cached_wrapped_rpc(): "foo" # operation_request.operation in compute client(s) expect a string. ) client._transport._wrapped_methods[ - client._transport.update_autonomous_database + client._transport.list_goldengate_deployment_environments ] = mock_rpc - request = {} - client.update_autonomous_database(request) + client.list_goldengate_deployment_environments(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - # Operation methods build a cached wrapper on first rpc call - # subsequent calls should use the cached wrapper - wrapper_fn.reset_mock() - - client.update_autonomous_database(request) + client.list_goldengate_deployment_environments(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_update_autonomous_database_rest_required_fields( - request_type=oracledatabase.UpdateAutonomousDatabaseRequest, +@pytest.mark.asyncio +async def test_list_goldengate_deployment_environments_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", ): - transport_class = transports.OracleDatabaseRestTransport - - request_init = {} - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) - ) - - # verify fields with default values are dropped - - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).update_autonomous_database._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) - - # verify required fields with default values are now present - - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).update_autonomous_database._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "request_id", - "update_mask", + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, ) - ) - jsonified_request.update(unset_fields) - # verify required fields with non-default values are left alone + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", - ) - request = request_type(**request_init) + # Ensure method has been cached + assert ( + client._client._transport.list_goldengate_deployment_environments + in client._client._transport._wrapped_methods + ) - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "patch", - "query_params": pb_request, - } - transcode_result["body"] = pb_request - transcode.return_value = transcode_result + # Replace cached wrapped function with mock + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.list_goldengate_deployment_environments + ] = mock_rpc - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) + request = {} + await client.list_goldengate_deployment_environments(request) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 - response = client.update_autonomous_database(request) + await client.list_goldengate_deployment_environments(request) - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 -def test_update_autonomous_database_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest(), + {}, + ], +) +async def test_list_goldengate_deployment_environments_async( + request_type, transport: str = "grpc_asyncio" +): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, ) - unset_fields = transport.update_autonomous_database._get_unset_required_fields({}) - assert set(unset_fields) == ( - set( - ( - "requestId", - "updateMask", + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_environments), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], ) ) - & set(("autonomousDatabase",)) - ) + response = await client.list_goldengate_deployment_environments(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + request = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest() + assert args[0] == request + # Establish that the response is the type that we expect. + assert isinstance(response, pagers.ListGoldengateDeploymentEnvironmentsAsyncPager) + assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] -def test_update_autonomous_database_rest_flattened(): + +def test_list_goldengate_deployment_environments_field_headers(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = ( + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest() + ) - # get arguments that satisfy an http rule for this method - sample_request = { - "autonomous_database": { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" - } - } + request.parent = "parent_value" - # get truthy value for each flattened field - mock_args = dict( - autonomous_database=gco_autonomous_database.AutonomousDatabase( - name="name_value" - ), - update_mask=field_mask_pb2.FieldMask(paths=["paths_value"]), - ) - mock_args.update(sample_request) + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_environments), "__call__" + ) as call: + call.return_value = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse() + client.list_goldengate_deployment_environments(request) - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert args[0] == request - client.update_autonomous_database(**mock_args) + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "parent=parent_value", + ) in kw["metadata"] - # Establish that the underlying call was made with the expected - # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{autonomous_database.name=projects/*/locations/*/autonomousDatabases/*}" - % client.transport._host, - args[1], - ) +@pytest.mark.asyncio +async def test_list_goldengate_deployment_environments_field_headers_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) -def test_update_autonomous_database_rest_flattened_error(transport: str = "rest"): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = ( + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest() ) - # Attempting to call a method with both a request object and flattened - # fields is an error. - with pytest.raises(ValueError): - client.update_autonomous_database( - oracledatabase.UpdateAutonomousDatabaseRequest(), - autonomous_database=gco_autonomous_database.AutonomousDatabase( - name="name_value" - ), - update_mask=field_mask_pb2.FieldMask(paths=["paths_value"]), + request.parent = "parent_value" + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_environments), "__call__" + ) as call: + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse() ) + await client.list_goldengate_deployment_environments(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert args[0] == request -def test_delete_autonomous_database_rest_use_cached_wrapped_rpc(): - # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, - # instead of constructing them on each call - with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", - ) + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "parent=parent_value", + ) in kw["metadata"] - # Should wrap all calls on client creation - assert wrapper_fn.call_count > 0 - wrapper_fn.reset_mock() - # Ensure method has been cached - assert ( - client._transport.delete_autonomous_database - in client._transport._wrapped_methods - ) +def test_list_goldengate_deployment_environments_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + ) - # Replace cached wrapped function with mock - mock_rpc = mock.Mock() - mock_rpc.return_value.name = ( - "foo" # operation_request.operation in compute client(s) expect a string. + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_environments), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse() + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + client.list_goldengate_deployment_environments( + parent="parent_value", ) - client._transport._wrapped_methods[ - client._transport.delete_autonomous_database - ] = mock_rpc - request = {} - client.delete_autonomous_database(request) + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + arg = args[0].parent + mock_val = "parent_value" + assert arg == mock_val - # Establish that the underlying gRPC stub method was called. - assert mock_rpc.call_count == 1 - # Operation methods build a cached wrapper on first rpc call - # subsequent calls should use the cached wrapper - wrapper_fn.reset_mock() +def test_list_goldengate_deployment_environments_flattened_error(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + ) - client.delete_autonomous_database(request) + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.list_goldengate_deployment_environments( + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest(), + parent="parent_value", + ) - # Establish that a new wrapper was not created for this call - assert wrapper_fn.call_count == 0 - assert mock_rpc.call_count == 2 +@pytest.mark.asyncio +async def test_list_goldengate_deployment_environments_flattened_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) -def test_delete_autonomous_database_rest_required_fields( - request_type=oracledatabase.DeleteAutonomousDatabaseRequest, -): - transport_class = transports.OracleDatabaseRestTransport + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_environments), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse() - request_init = {} - request_init["name"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse() + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + response = await client.list_goldengate_deployment_environments( + parent="parent_value", + ) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + arg = args[0].parent + mock_val = "parent_value" + assert arg == mock_val + + +@pytest.mark.asyncio +async def test_list_goldengate_deployment_environments_flattened_error_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - # verify fields with default values are dropped + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + await client.list_goldengate_deployment_environments( + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest(), + parent="parent_value", + ) - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).delete_autonomous_database._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) - # verify required fields with default values are now present +def test_list_goldengate_deployment_environments_pager(transport_name: str = "grpc"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport_name, + ) - jsonified_request["name"] = "name_value" + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_environments), "__call__" + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse( + goldengate_deployment_environments=[ + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + ], + next_page_token="abc", + ), + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse( + goldengate_deployment_environments=[], + next_page_token="def", + ), + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse( + goldengate_deployment_environments=[ + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + ], + next_page_token="ghi", + ), + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse( + goldengate_deployment_environments=[ + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + ], + ), + RuntimeError, + ) - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).delete_autonomous_database._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set(("request_id",)) - jsonified_request.update(unset_fields) + expected_metadata = () + retry = retries.Retry() + timeout = 5 + expected_metadata = tuple(expected_metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", ""),)), + ) + pager = client.list_goldengate_deployment_environments( + request={}, retry=retry, timeout=timeout + ) - # verify required fields with non-default values are left alone - assert "name" in jsonified_request - assert jsonified_request["name"] == "name_value" + assert pager._metadata == expected_metadata + assert pager._retry == retry + assert pager._timeout == timeout + + results = list(pager) + assert len(results) == 6 + assert all( + isinstance( + i, goldengate_deployment_environment.GoldengateDeploymentEnvironment + ) + for i in results + ) + +def test_list_goldengate_deployment_environments_pages(transport_name: str = "grpc"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport=transport_name, ) - request = request_type(**request_init) - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "delete", - "query_params": pb_request, - } - transcode.return_value = transcode_result + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_environments), "__call__" + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse( + goldengate_deployment_environments=[ + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + ], + next_page_token="abc", + ), + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse( + goldengate_deployment_environments=[], + next_page_token="def", + ), + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse( + goldengate_deployment_environments=[ + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + ], + next_page_token="ghi", + ), + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse( + goldengate_deployment_environments=[ + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + ], + ), + RuntimeError, + ) + pages = list(client.list_goldengate_deployment_environments(request={}).pages) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} +@pytest.mark.asyncio +async def test_list_goldengate_deployment_environments_async_pager(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) - response = client.delete_autonomous_database(request) + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_environments), + "__call__", + new_callable=mock.AsyncMock, + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse( + goldengate_deployment_environments=[ + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + ], + next_page_token="abc", + ), + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse( + goldengate_deployment_environments=[], + next_page_token="def", + ), + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse( + goldengate_deployment_environments=[ + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + ], + next_page_token="ghi", + ), + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse( + goldengate_deployment_environments=[ + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + ], + ), + RuntimeError, + ) + async_pager = await client.list_goldengate_deployment_environments( + request={}, + ) + assert async_pager.next_page_token == "abc" + responses = [] + async for response in async_pager: # pragma: no branch + responses.append(response) - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) + assert len(responses) == 6 + assert all( + isinstance( + i, goldengate_deployment_environment.GoldengateDeploymentEnvironment + ) + for i in responses + ) -def test_delete_autonomous_database_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials +@pytest.mark.asyncio +async def test_list_goldengate_deployment_environments_async_pages(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - unset_fields = transport.delete_autonomous_database._get_unset_required_fields({}) - assert set(unset_fields) == (set(("requestId",)) & set(("name",))) + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_environments), + "__call__", + new_callable=mock.AsyncMock, + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse( + goldengate_deployment_environments=[ + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + ], + next_page_token="abc", + ), + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse( + goldengate_deployment_environments=[], + next_page_token="def", + ), + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse( + goldengate_deployment_environments=[ + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + ], + next_page_token="ghi", + ), + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse( + goldengate_deployment_environments=[ + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + ], + ), + RuntimeError, + ) + pages = [] + async for page_ in ( + await client.list_goldengate_deployment_environments(request={}) + ).pages: + pages.append(page_) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token -def test_delete_autonomous_database_rest_flattened(): +@pytest.mark.parametrize( + "request_type", + [ + goldengate_connection_type.GetGoldengateConnectionTypeRequest(), + {}, + ], +) +def test_get_goldengate_connection_type(request_type, transport: str = "grpc"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport=transport, ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - - # get arguments that satisfy an http rule for this method - sample_request = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" - } + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type - # get truthy value for each flattened field - mock_args = dict( + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection_type), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = goldengate_connection_type.GoldengateConnectionType( name="name_value", + connection_type=goldengate_connection_type.GoldengateConnectionType.ConnectionType.GOLDENGATE, + technology_types=["technology_types_value"], ) - mock_args.update(sample_request) - - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.get_goldengate_connection_type(request) - client.delete_autonomous_database(**mock_args) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + request = goldengate_connection_type.GetGoldengateConnectionTypeRequest() + assert args[0] == request - # Establish that the underlying call was made with the expected - # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{name=projects/*/locations/*/autonomousDatabases/*}" - % client.transport._host, - args[1], - ) + # Establish that the response is the type that we expect. + assert isinstance(response, goldengate_connection_type.GoldengateConnectionType) + assert response.name == "name_value" + assert ( + response.connection_type + == goldengate_connection_type.GoldengateConnectionType.ConnectionType.GOLDENGATE + ) + assert response.technology_types == ["technology_types_value"] -def test_delete_autonomous_database_rest_flattened_error(transport: str = "rest"): +def test_get_goldengate_connection_type_non_empty_request_with_auto_populated_field(): + # This test is a coverage failsafe to make sure that UUID4 fields are + # automatically populated, according to AIP-4235, with non-empty requests. client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport=transport, + transport="grpc", ) - # Attempting to call a method with both a request object and flattened - # fields is an error. - with pytest.raises(ValueError): - client.delete_autonomous_database( - oracledatabase.DeleteAutonomousDatabaseRequest(), + # Populate all string fields in the request which are not UUID4 + # since we want to check that UUID4 are populated automatically + # if they meet the requirements of AIP 4235. + request = goldengate_connection_type.GetGoldengateConnectionTypeRequest( + name="name_value", + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection_type), "__call__" + ) as call: + call.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client.get_goldengate_connection_type(request=request) + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_connection_type.GetGoldengateConnectionTypeRequest( name="name_value", ) + assert args[0] == request_msg -def test_restore_autonomous_database_rest_use_cached_wrapped_rpc(): +def test_get_goldengate_connection_type_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport="grpc", ) # Should wrap all calls on client creation @@ -30643,7 +32196,7 @@ def test_restore_autonomous_database_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.restore_autonomous_database + client._transport.get_goldengate_connection_type in client._transport._wrapped_methods ) @@ -30653,183 +32206,348 @@ def test_restore_autonomous_database_rest_use_cached_wrapped_rpc(): "foo" # operation_request.operation in compute client(s) expect a string. ) client._transport._wrapped_methods[ - client._transport.restore_autonomous_database + client._transport.get_goldengate_connection_type ] = mock_rpc - request = {} - client.restore_autonomous_database(request) + client.get_goldengate_connection_type(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - # Operation methods build a cached wrapper on first rpc call - # subsequent calls should use the cached wrapper - wrapper_fn.reset_mock() - - client.restore_autonomous_database(request) + client.get_goldengate_connection_type(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_restore_autonomous_database_rest_required_fields( - request_type=oracledatabase.RestoreAutonomousDatabaseRequest, +@pytest.mark.asyncio +async def test_get_goldengate_connection_type_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", ): - transport_class = transports.OracleDatabaseRestTransport + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) - request_init = {} - request_init["name"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) - ) + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() - # verify fields with default values are dropped + # Ensure method has been cached + assert ( + client._client._transport.get_goldengate_connection_type + in client._client._transport._wrapped_methods + ) - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).restore_autonomous_database._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + # Replace cached wrapped function with mock + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.get_goldengate_connection_type + ] = mock_rpc - # verify required fields with default values are now present + request = {} + await client.get_goldengate_connection_type(request) - jsonified_request["name"] = "name_value" + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).restore_autonomous_database._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + await client.get_goldengate_connection_type(request) - # verify required fields with non-default values are left alone - assert "name" in jsonified_request - assert jsonified_request["name"] == "name_value" + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", - ) - request = request_type(**request_init) - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "post", - "query_params": pb_request, - } - transcode_result["body"] = pb_request - transcode.return_value = transcode_result +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + goldengate_connection_type.GetGoldengateConnectionTypeRequest(), + {}, + ], +) +async def test_get_goldengate_connection_type_async( + request_type, transport: str = "grpc_asyncio" +): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection_type), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection_type.GoldengateConnectionType( + name="name_value", + connection_type=goldengate_connection_type.GoldengateConnectionType.ConnectionType.GOLDENGATE, + technology_types=["technology_types_value"], + ) + ) + response = await client.get_goldengate_connection_type(request) - response = client.restore_autonomous_database(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + request = goldengate_connection_type.GetGoldengateConnectionTypeRequest() + assert args[0] == request - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) + # Establish that the response is the type that we expect. + assert isinstance(response, goldengate_connection_type.GoldengateConnectionType) + assert response.name == "name_value" + assert ( + response.connection_type + == goldengate_connection_type.GoldengateConnectionType.ConnectionType.GOLDENGATE + ) + assert response.technology_types == ["technology_types_value"] -def test_restore_autonomous_database_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials +def test_get_goldengate_connection_type_field_headers(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), ) - unset_fields = transport.restore_autonomous_database._get_unset_required_fields({}) - assert set(unset_fields) == ( - set(()) - & set( - ( - "name", - "restoreTime", - ) - ) + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = goldengate_connection_type.GetGoldengateConnectionTypeRequest() + + request.name = "name_value" + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection_type), "__call__" + ) as call: + call.return_value = goldengate_connection_type.GoldengateConnectionType() + client.get_goldengate_connection_type(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert args[0] == request + + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "name=name_value", + ) in kw["metadata"] + + +@pytest.mark.asyncio +async def test_get_goldengate_connection_type_field_headers_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = goldengate_connection_type.GetGoldengateConnectionTypeRequest() + + request.name = "name_value" -def test_restore_autonomous_database_rest_flattened(): + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection_type), "__call__" + ) as call: + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection_type.GoldengateConnectionType() + ) + await client.get_goldengate_connection_type(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert args[0] == request + + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "name=name_value", + ) in kw["metadata"] + + +def test_get_goldengate_connection_type_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection_type), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = goldengate_connection_type.GoldengateConnectionType() + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + client.get_goldengate_connection_type( + name="name_value", + ) - # get arguments that satisfy an http rule for this method - sample_request = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" - } + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + arg = args[0].name + mock_val = "name_value" + assert arg == mock_val - # get truthy value for each flattened field - mock_args = dict( + +def test_get_goldengate_connection_type_flattened_error(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.get_goldengate_connection_type( + goldengate_connection_type.GetGoldengateConnectionTypeRequest(), name="name_value", - restore_time=timestamp_pb2.Timestamp(seconds=751), ) - mock_args.update(sample_request) - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.restore_autonomous_database(**mock_args) +@pytest.mark.asyncio +async def test_get_goldengate_connection_type_flattened_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection_type), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = goldengate_connection_type.GoldengateConnectionType() + + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection_type.GoldengateConnectionType() + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + response = await client.get_goldengate_connection_type( + name="name_value", + ) # Establish that the underlying call was made with the expected # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{name=projects/*/locations/*/autonomousDatabases/*}:restore" - % client.transport._host, - args[1], - ) + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + arg = args[0].name + mock_val = "name_value" + assert arg == mock_val -def test_restore_autonomous_database_rest_flattened_error(transport: str = "rest"): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, +@pytest.mark.asyncio +async def test_get_goldengate_connection_type_flattened_error_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.restore_autonomous_database( - oracledatabase.RestoreAutonomousDatabaseRequest(), + await client.get_goldengate_connection_type( + goldengate_connection_type.GetGoldengateConnectionTypeRequest(), name="name_value", - restore_time=timestamp_pb2.Timestamp(seconds=751), ) -def test_generate_autonomous_database_wallet_rest_use_cached_wrapped_rpc(): +@pytest.mark.parametrize( + "request_type", + [ + goldengate_connection_type.ListGoldengateConnectionTypesRequest(), + {}, + ], +) +def test_list_goldengate_connection_types(request_type, transport: str = "grpc"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_types), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = ( + goldengate_connection_type.ListGoldengateConnectionTypesResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) + ) + response = client.list_goldengate_connection_types(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + request = goldengate_connection_type.ListGoldengateConnectionTypesRequest() + assert args[0] == request + + # Establish that the response is the type that we expect. + assert isinstance(response, pagers.ListGoldengateConnectionTypesPager) + assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] + + +def test_list_goldengate_connection_types_non_empty_request_with_auto_populated_field(): + # This test is a coverage failsafe to make sure that UUID4 fields are + # automatically populated, according to AIP-4235, with non-empty requests. + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Populate all string fields in the request which are not UUID4 + # since we want to check that UUID4 are populated automatically + # if they meet the requirements of AIP 4235. + request = goldengate_connection_type.ListGoldengateConnectionTypesRequest( + parent="parent_value", + page_token="page_token_value", + filter="filter_value", + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_types), "__call__" + ) as call: + call.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client.list_goldengate_connection_types(request=request) + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_connection_type.ListGoldengateConnectionTypesRequest( + parent="parent_value", + page_token="page_token_value", + filter="filter_value", + ) + assert args[0] == request_msg + + +def test_list_goldengate_connection_types_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport="grpc", ) # Should wrap all calls on client creation @@ -30838,7 +32556,7 @@ def test_generate_autonomous_database_wallet_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.generate_autonomous_database_wallet + client._transport.list_goldengate_connection_types in client._transport._wrapped_methods ) @@ -30848,465 +32566,549 @@ def test_generate_autonomous_database_wallet_rest_use_cached_wrapped_rpc(): "foo" # operation_request.operation in compute client(s) expect a string. ) client._transport._wrapped_methods[ - client._transport.generate_autonomous_database_wallet + client._transport.list_goldengate_connection_types ] = mock_rpc - request = {} - client.generate_autonomous_database_wallet(request) + client.list_goldengate_connection_types(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.generate_autonomous_database_wallet(request) + client.list_goldengate_connection_types(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_generate_autonomous_database_wallet_rest_required_fields( - request_type=oracledatabase.GenerateAutonomousDatabaseWalletRequest, +@pytest.mark.asyncio +async def test_list_goldengate_connection_types_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", ): - transport_class = transports.OracleDatabaseRestTransport + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) - request_init = {} - request_init["name"] = "" - request_init["password"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) - ) + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() - # verify fields with default values are dropped + # Ensure method has been cached + assert ( + client._client._transport.list_goldengate_connection_types + in client._client._transport._wrapped_methods + ) - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).generate_autonomous_database_wallet._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + # Replace cached wrapped function with mock + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.list_goldengate_connection_types + ] = mock_rpc - # verify required fields with default values are now present + request = {} + await client.list_goldengate_connection_types(request) - jsonified_request["name"] = "name_value" - jsonified_request["password"] = "password_value" + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).generate_autonomous_database_wallet._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + await client.list_goldengate_connection_types(request) - # verify required fields with non-default values are left alone - assert "name" in jsonified_request - assert jsonified_request["name"] == "name_value" - assert "password" in jsonified_request - assert jsonified_request["password"] == "password_value" + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + goldengate_connection_type.ListGoldengateConnectionTypesRequest(), + {}, + ], +) +async def test_list_goldengate_connection_types_async( + request_type, transport: str = "grpc_asyncio" +): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) + + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_types), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection_type.ListGoldengateConnectionTypesResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) + ) + response = await client.list_goldengate_connection_types(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + request = goldengate_connection_type.ListGoldengateConnectionTypesRequest() + assert args[0] == request + + # Establish that the response is the type that we expect. + assert isinstance(response, pagers.ListGoldengateConnectionTypesAsyncPager) + assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] + +def test_list_goldengate_connection_types_field_headers(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - request = request_type(**request_init) - - # Designate an appropriate value for the returned response. - return_value = oracledatabase.GenerateAutonomousDatabaseWalletResponse() - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "post", - "query_params": pb_request, - } - transcode_result["body"] = pb_request - transcode.return_value = transcode_result - response_value = Response() - response_value.status_code = 200 + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = goldengate_connection_type.ListGoldengateConnectionTypesRequest() - # Convert return value to protobuf type - return_value = oracledatabase.GenerateAutonomousDatabaseWalletResponse.pb( - return_value - ) - json_return_value = json_format.MessageToJson(return_value) + request.parent = "parent_value" - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_types), "__call__" + ) as call: + call.return_value = ( + goldengate_connection_type.ListGoldengateConnectionTypesResponse() + ) + client.list_goldengate_connection_types(request) - response = client.generate_autonomous_database_wallet(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert args[0] == request - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "parent=parent_value", + ) in kw["metadata"] -def test_generate_autonomous_database_wallet_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials +@pytest.mark.asyncio +async def test_list_goldengate_connection_types_field_headers_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - unset_fields = ( - transport.generate_autonomous_database_wallet._get_unset_required_fields({}) - ) - assert set(unset_fields) == ( - set(()) - & set( - ( - "name", - "password", - ) + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = goldengate_connection_type.ListGoldengateConnectionTypesRequest() + + request.parent = "parent_value" + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_types), "__call__" + ) as call: + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection_type.ListGoldengateConnectionTypesResponse() ) - ) + await client.list_goldengate_connection_types(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert args[0] == request -def test_generate_autonomous_database_wallet_rest_flattened(): + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "parent=parent_value", + ) in kw["metadata"] + + +def test_list_goldengate_connection_types_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = oracledatabase.GenerateAutonomousDatabaseWalletResponse() - - # get arguments that satisfy an http rule for this method - sample_request = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" - } - - # get truthy value for each flattened field - mock_args = dict( - name="name_value", - type_=autonomous_database.GenerateType.ALL, - is_regional=True, - password="password_value", + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_types), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = ( + goldengate_connection_type.ListGoldengateConnectionTypesResponse() ) - mock_args.update(sample_request) - - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - # Convert return value to protobuf type - return_value = oracledatabase.GenerateAutonomousDatabaseWalletResponse.pb( - return_value + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + client.list_goldengate_connection_types( + parent="parent_value", ) - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - - client.generate_autonomous_database_wallet(**mock_args) # Establish that the underlying call was made with the expected # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{name=projects/*/locations/*/autonomousDatabases/*}:generateWallet" - % client.transport._host, - args[1], - ) + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + arg = args[0].parent + mock_val = "parent_value" + assert arg == mock_val -def test_generate_autonomous_database_wallet_rest_flattened_error( - transport: str = "rest", -): +def test_list_goldengate_connection_types_flattened_error(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport=transport, ) # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.generate_autonomous_database_wallet( - oracledatabase.GenerateAutonomousDatabaseWalletRequest(), - name="name_value", - type_=autonomous_database.GenerateType.ALL, - is_regional=True, - password="password_value", + client.list_goldengate_connection_types( + goldengate_connection_type.ListGoldengateConnectionTypesRequest(), + parent="parent_value", ) -def test_list_autonomous_db_versions_rest_use_cached_wrapped_rpc(): - # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, - # instead of constructing them on each call - with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", - ) - - # Should wrap all calls on client creation - assert wrapper_fn.call_count > 0 - wrapper_fn.reset_mock() +@pytest.mark.asyncio +async def test_list_goldengate_connection_types_flattened_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) - # Ensure method has been cached - assert ( - client._transport.list_autonomous_db_versions - in client._transport._wrapped_methods + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_types), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = ( + goldengate_connection_type.ListGoldengateConnectionTypesResponse() ) - # Replace cached wrapped function with mock - mock_rpc = mock.Mock() - mock_rpc.return_value.name = ( - "foo" # operation_request.operation in compute client(s) expect a string. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection_type.ListGoldengateConnectionTypesResponse() + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + response = await client.list_goldengate_connection_types( + parent="parent_value", ) - client._transport._wrapped_methods[ - client._transport.list_autonomous_db_versions - ] = mock_rpc - - request = {} - client.list_autonomous_db_versions(request) - # Establish that the underlying gRPC stub method was called. - assert mock_rpc.call_count == 1 + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + arg = args[0].parent + mock_val = "parent_value" + assert arg == mock_val - client.list_autonomous_db_versions(request) - # Establish that a new wrapper was not created for this call - assert wrapper_fn.call_count == 0 - assert mock_rpc.call_count == 2 - - -def test_list_autonomous_db_versions_rest_required_fields( - request_type=oracledatabase.ListAutonomousDbVersionsRequest, -): - transport_class = transports.OracleDatabaseRestTransport - - request_init = {} - request_init["parent"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) +@pytest.mark.asyncio +async def test_list_goldengate_connection_types_flattened_error_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - # verify fields with default values are dropped - - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).list_autonomous_db_versions._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) - - # verify required fields with default values are now present - - jsonified_request["parent"] = "parent_value" - - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).list_autonomous_db_versions._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "page_size", - "page_token", + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + await client.list_goldengate_connection_types( + goldengate_connection_type.ListGoldengateConnectionTypesRequest(), + parent="parent_value", ) - ) - jsonified_request.update(unset_fields) - # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" +def test_list_goldengate_connection_types_pager(transport_name: str = "grpc"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport=transport_name, ) - request = request_type(**request_init) - - # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListAutonomousDbVersionsResponse() - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "get", - "query_params": pb_request, - } - transcode.return_value = transcode_result - - response_value = Response() - response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = oracledatabase.ListAutonomousDbVersionsResponse.pb( - return_value - ) - json_return_value = json_format.MessageToJson(return_value) - - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_autonomous_db_versions(request) - - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_types), "__call__" + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + goldengate_connection_type.ListGoldengateConnectionTypesResponse( + goldengate_connection_types=[ + goldengate_connection_type.GoldengateConnectionType(), + goldengate_connection_type.GoldengateConnectionType(), + goldengate_connection_type.GoldengateConnectionType(), + ], + next_page_token="abc", + ), + goldengate_connection_type.ListGoldengateConnectionTypesResponse( + goldengate_connection_types=[], + next_page_token="def", + ), + goldengate_connection_type.ListGoldengateConnectionTypesResponse( + goldengate_connection_types=[ + goldengate_connection_type.GoldengateConnectionType(), + ], + next_page_token="ghi", + ), + goldengate_connection_type.ListGoldengateConnectionTypesResponse( + goldengate_connection_types=[ + goldengate_connection_type.GoldengateConnectionType(), + goldengate_connection_type.GoldengateConnectionType(), + ], + ), + RuntimeError, + ) + expected_metadata = () + retry = retries.Retry() + timeout = 5 + expected_metadata = tuple(expected_metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", ""),)), + ) + pager = client.list_goldengate_connection_types( + request={}, retry=retry, timeout=timeout + ) -def test_list_autonomous_db_versions_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials - ) + assert pager._metadata == expected_metadata + assert pager._retry == retry + assert pager._timeout == timeout - unset_fields = transport.list_autonomous_db_versions._get_unset_required_fields({}) - assert set(unset_fields) == ( - set( - ( - "pageSize", - "pageToken", - ) + results = list(pager) + assert len(results) == 6 + assert all( + isinstance(i, goldengate_connection_type.GoldengateConnectionType) + for i in results ) - & set(("parent",)) - ) -def test_list_autonomous_db_versions_rest_flattened(): +def test_list_goldengate_connection_types_pages(transport_name: str = "grpc"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport=transport_name, ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListAutonomousDbVersionsResponse() - - # get arguments that satisfy an http rule for this method - sample_request = {"parent": "projects/sample1/locations/sample2"} - - # get truthy value for each flattened field - mock_args = dict( - parent="parent_value", + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_types), "__call__" + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + goldengate_connection_type.ListGoldengateConnectionTypesResponse( + goldengate_connection_types=[ + goldengate_connection_type.GoldengateConnectionType(), + goldengate_connection_type.GoldengateConnectionType(), + goldengate_connection_type.GoldengateConnectionType(), + ], + next_page_token="abc", + ), + goldengate_connection_type.ListGoldengateConnectionTypesResponse( + goldengate_connection_types=[], + next_page_token="def", + ), + goldengate_connection_type.ListGoldengateConnectionTypesResponse( + goldengate_connection_types=[ + goldengate_connection_type.GoldengateConnectionType(), + ], + next_page_token="ghi", + ), + goldengate_connection_type.ListGoldengateConnectionTypesResponse( + goldengate_connection_types=[ + goldengate_connection_type.GoldengateConnectionType(), + goldengate_connection_type.GoldengateConnectionType(), + ], + ), + RuntimeError, ) - mock_args.update(sample_request) + pages = list(client.list_goldengate_connection_types(request={}).pages) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - # Convert return value to protobuf type - return_value = oracledatabase.ListAutonomousDbVersionsResponse.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_autonomous_db_versions(**mock_args) +@pytest.mark.asyncio +async def test_list_goldengate_connection_types_async_pager(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) - # Establish that the underlying call was made with the expected - # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*}/autonomousDbVersions" - % client.transport._host, - args[1], + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_types), + "__call__", + new_callable=mock.AsyncMock, + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + goldengate_connection_type.ListGoldengateConnectionTypesResponse( + goldengate_connection_types=[ + goldengate_connection_type.GoldengateConnectionType(), + goldengate_connection_type.GoldengateConnectionType(), + goldengate_connection_type.GoldengateConnectionType(), + ], + next_page_token="abc", + ), + goldengate_connection_type.ListGoldengateConnectionTypesResponse( + goldengate_connection_types=[], + next_page_token="def", + ), + goldengate_connection_type.ListGoldengateConnectionTypesResponse( + goldengate_connection_types=[ + goldengate_connection_type.GoldengateConnectionType(), + ], + next_page_token="ghi", + ), + goldengate_connection_type.ListGoldengateConnectionTypesResponse( + goldengate_connection_types=[ + goldengate_connection_type.GoldengateConnectionType(), + goldengate_connection_type.GoldengateConnectionType(), + ], + ), + RuntimeError, ) + async_pager = await client.list_goldengate_connection_types( + request={}, + ) + assert async_pager.next_page_token == "abc" + responses = [] + async for response in async_pager: # pragma: no branch + responses.append(response) - -def test_list_autonomous_db_versions_rest_flattened_error(transport: str = "rest"): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, - ) - - # Attempting to call a method with both a request object and flattened - # fields is an error. - with pytest.raises(ValueError): - client.list_autonomous_db_versions( - oracledatabase.ListAutonomousDbVersionsRequest(), - parent="parent_value", + assert len(responses) == 6 + assert all( + isinstance(i, goldengate_connection_type.GoldengateConnectionType) + for i in responses ) -def test_list_autonomous_db_versions_rest_pager(transport: str = "rest"): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, +@pytest.mark.asyncio +async def test_list_goldengate_connection_types_async_pages(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # TODO(kbandes): remove this mock unless there's a good reason for it. - # with mock.patch.object(path_template, 'transcode') as transcode: - # Set the response as a series of pages - response = ( - oracledatabase.ListAutonomousDbVersionsResponse( - autonomous_db_versions=[ - autonomous_db_version.AutonomousDbVersion(), - autonomous_db_version.AutonomousDbVersion(), - autonomous_db_version.AutonomousDbVersion(), + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_types), + "__call__", + new_callable=mock.AsyncMock, + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + goldengate_connection_type.ListGoldengateConnectionTypesResponse( + goldengate_connection_types=[ + goldengate_connection_type.GoldengateConnectionType(), + goldengate_connection_type.GoldengateConnectionType(), + goldengate_connection_type.GoldengateConnectionType(), ], next_page_token="abc", ), - oracledatabase.ListAutonomousDbVersionsResponse( - autonomous_db_versions=[], + goldengate_connection_type.ListGoldengateConnectionTypesResponse( + goldengate_connection_types=[], next_page_token="def", ), - oracledatabase.ListAutonomousDbVersionsResponse( - autonomous_db_versions=[ - autonomous_db_version.AutonomousDbVersion(), + goldengate_connection_type.ListGoldengateConnectionTypesResponse( + goldengate_connection_types=[ + goldengate_connection_type.GoldengateConnectionType(), ], next_page_token="ghi", ), - oracledatabase.ListAutonomousDbVersionsResponse( - autonomous_db_versions=[ - autonomous_db_version.AutonomousDbVersion(), - autonomous_db_version.AutonomousDbVersion(), + goldengate_connection_type.ListGoldengateConnectionTypesResponse( + goldengate_connection_types=[ + goldengate_connection_type.GoldengateConnectionType(), + goldengate_connection_type.GoldengateConnectionType(), ], ), + RuntimeError, ) - # Two responses for two calls - response = response + response + pages = [] + async for page_ in ( + await client.list_goldengate_connection_types(request={}) + ).pages: + pages.append(page_) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token - # Wrap the values into proper Response objs - response = tuple( - oracledatabase.ListAutonomousDbVersionsResponse.to_json(x) for x in response - ) - return_values = tuple(Response() for i in response) - for return_val, response_val in zip(return_values, response): - return_val._content = response_val.encode("UTF-8") - return_val.status_code = 200 - req.side_effect = return_values - sample_request = {"parent": "projects/sample1/locations/sample2"} +@pytest.mark.parametrize( + "request_type", + [ + db_version.ListDbVersionsRequest(), + {}, + ], +) +def test_list_db_versions(request_type, transport: str = "grpc"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) - pager = client.list_autonomous_db_versions(request=sample_request) + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type - results = list(pager) - assert len(results) == 6 - assert all( - isinstance(i, autonomous_db_version.AutonomousDbVersion) for i in results + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object(type(client.transport.list_db_versions), "__call__") as call: + # Designate an appropriate return value for the call. + call.return_value = db_version.ListDbVersionsResponse( + next_page_token="next_page_token_value", ) + response = client.list_db_versions(request) - pages = list(client.list_autonomous_db_versions(request=sample_request).pages) - for page_, token in zip(pages, ["abc", "def", "ghi", ""]): - assert page_.raw_page.next_page_token == token + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + request = db_version.ListDbVersionsRequest() + assert args[0] == request + # Establish that the response is the type that we expect. + assert isinstance(response, pagers.ListDbVersionsPager) + assert response.next_page_token == "next_page_token_value" -def test_list_autonomous_database_character_sets_rest_use_cached_wrapped_rpc(): + +def test_list_db_versions_non_empty_request_with_auto_populated_field(): + # This test is a coverage failsafe to make sure that UUID4 fields are + # automatically populated, according to AIP-4235, with non-empty requests. + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Populate all string fields in the request which are not UUID4 + # since we want to check that UUID4 are populated automatically + # if they meet the requirements of AIP 4235. + request = db_version.ListDbVersionsRequest( + parent="parent_value", + page_token="page_token_value", + filter="filter_value", + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object(type(client.transport.list_db_versions), "__call__") as call: + call.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client.list_db_versions(request=request) + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = db_version.ListDbVersionsRequest( + parent="parent_value", + page_token="page_token_value", + filter="filter_value", + ) + assert args[0] == request_msg + + +def test_list_db_versions_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport="grpc", ) # Should wrap all calls on client creation @@ -31314,284 +33116,523 @@ def test_list_autonomous_database_character_sets_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert ( - client._transport.list_autonomous_database_character_sets - in client._transport._wrapped_methods - ) + assert client._transport.list_db_versions in client._transport._wrapped_methods # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[ - client._transport.list_autonomous_database_character_sets - ] = mock_rpc - + client._transport._wrapped_methods[client._transport.list_db_versions] = ( + mock_rpc + ) request = {} - client.list_autonomous_database_character_sets(request) + client.list_db_versions(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_autonomous_database_character_sets(request) + client.list_db_versions(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_list_autonomous_database_character_sets_rest_required_fields( - request_type=oracledatabase.ListAutonomousDatabaseCharacterSetsRequest, +@pytest.mark.asyncio +async def test_list_db_versions_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", ): - transport_class = transports.OracleDatabaseRestTransport + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) - request_init = {} - request_init["parent"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) - ) + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() - # verify fields with default values are dropped + # Ensure method has been cached + assert ( + client._client._transport.list_db_versions + in client._client._transport._wrapped_methods + ) - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).list_autonomous_database_character_sets._get_unset_required_fields( - jsonified_request - ) - jsonified_request.update(unset_fields) + # Replace cached wrapped function with mock + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.list_db_versions + ] = mock_rpc - # verify required fields with default values are now present + request = {} + await client.list_db_versions(request) - jsonified_request["parent"] = "parent_value" + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).list_autonomous_database_character_sets._get_unset_required_fields( - jsonified_request - ) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "filter", - "page_size", - "page_token", - ) - ) - jsonified_request.update(unset_fields) + await client.list_db_versions(request) - # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", - ) - request = request_type(**request_init) - # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListAutonomousDatabaseCharacterSetsResponse() - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "get", - "query_params": pb_request, - } - transcode.return_value = transcode_result +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + db_version.ListDbVersionsRequest(), + {}, + ], +) +async def test_list_db_versions_async(request_type, transport: str = "grpc_asyncio"): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) - response_value = Response() - response_value.status_code = 200 + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type - # Convert return value to protobuf type - return_value = ( - oracledatabase.ListAutonomousDatabaseCharacterSetsResponse.pb( - return_value - ) + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object(type(client.transport.list_db_versions), "__call__") as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + db_version.ListDbVersionsResponse( + next_page_token="next_page_token_value", ) - json_return_value = json_format.MessageToJson(return_value) + ) + response = await client.list_db_versions(request) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + request = db_version.ListDbVersionsRequest() + assert args[0] == request - response = client.list_autonomous_database_character_sets(request) + # Establish that the response is the type that we expect. + assert isinstance(response, pagers.ListDbVersionsAsyncPager) + assert response.next_page_token == "next_page_token_value" - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) +def test_list_db_versions_field_headers(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + ) -def test_list_autonomous_database_character_sets_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials - ) + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = db_version.ListDbVersionsRequest() - unset_fields = ( - transport.list_autonomous_database_character_sets._get_unset_required_fields({}) + request.parent = "parent_value" + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object(type(client.transport.list_db_versions), "__call__") as call: + call.return_value = db_version.ListDbVersionsResponse() + client.list_db_versions(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert args[0] == request + + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "parent=parent_value", + ) in kw["metadata"] + + +@pytest.mark.asyncio +async def test_list_db_versions_field_headers_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - assert set(unset_fields) == ( - set( - ( - "filter", - "pageSize", - "pageToken", - ) + + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = db_version.ListDbVersionsRequest() + + request.parent = "parent_value" + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object(type(client.transport.list_db_versions), "__call__") as call: + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + db_version.ListDbVersionsResponse() ) - & set(("parent",)) - ) + await client.list_db_versions(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert args[0] == request + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "parent=parent_value", + ) in kw["metadata"] -def test_list_autonomous_database_character_sets_rest_flattened(): + +def test_list_db_versions_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListAutonomousDatabaseCharacterSetsResponse() + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object(type(client.transport.list_db_versions), "__call__") as call: + # Designate an appropriate return value for the call. + call.return_value = db_version.ListDbVersionsResponse() + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + client.list_db_versions( + parent="parent_value", + ) - # get arguments that satisfy an http rule for this method - sample_request = {"parent": "projects/sample1/locations/sample2"} + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + arg = args[0].parent + mock_val = "parent_value" + assert arg == mock_val - # get truthy value for each flattened field - mock_args = dict( + +def test_list_db_versions_flattened_error(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.list_db_versions( + db_version.ListDbVersionsRequest(), parent="parent_value", ) - mock_args.update(sample_request) - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - # Convert return value to protobuf type - return_value = oracledatabase.ListAutonomousDatabaseCharacterSetsResponse.pb( - return_value - ) - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_autonomous_database_character_sets(**mock_args) +@pytest.mark.asyncio +async def test_list_db_versions_flattened_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object(type(client.transport.list_db_versions), "__call__") as call: + # Designate an appropriate return value for the call. + call.return_value = db_version.ListDbVersionsResponse() + + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + db_version.ListDbVersionsResponse() + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + response = await client.list_db_versions( + parent="parent_value", + ) # Establish that the underlying call was made with the expected # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*}/autonomousDatabaseCharacterSets" - % client.transport._host, - args[1], - ) + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + arg = args[0].parent + mock_val = "parent_value" + assert arg == mock_val -def test_list_autonomous_database_character_sets_rest_flattened_error( - transport: str = "rest", -): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, +@pytest.mark.asyncio +async def test_list_db_versions_flattened_error_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.list_autonomous_database_character_sets( - oracledatabase.ListAutonomousDatabaseCharacterSetsRequest(), + await client.list_db_versions( + db_version.ListDbVersionsRequest(), parent="parent_value", ) -def test_list_autonomous_database_character_sets_rest_pager(transport: str = "rest"): +def test_list_db_versions_pager(transport_name: str = "grpc"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport=transport, + transport=transport_name, ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # TODO(kbandes): remove this mock unless there's a good reason for it. - # with mock.patch.object(path_template, 'transcode') as transcode: - # Set the response as a series of pages - response = ( - oracledatabase.ListAutonomousDatabaseCharacterSetsResponse( - autonomous_database_character_sets=[ - autonomous_database_character_set.AutonomousDatabaseCharacterSet(), - autonomous_database_character_set.AutonomousDatabaseCharacterSet(), - autonomous_database_character_set.AutonomousDatabaseCharacterSet(), + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object(type(client.transport.list_db_versions), "__call__") as call: + # Set the response to a series of pages. + call.side_effect = ( + db_version.ListDbVersionsResponse( + db_versions=[ + db_version.DbVersion(), + db_version.DbVersion(), + db_version.DbVersion(), ], next_page_token="abc", ), - oracledatabase.ListAutonomousDatabaseCharacterSetsResponse( - autonomous_database_character_sets=[], + db_version.ListDbVersionsResponse( + db_versions=[], next_page_token="def", ), - oracledatabase.ListAutonomousDatabaseCharacterSetsResponse( - autonomous_database_character_sets=[ - autonomous_database_character_set.AutonomousDatabaseCharacterSet(), + db_version.ListDbVersionsResponse( + db_versions=[ + db_version.DbVersion(), ], next_page_token="ghi", ), - oracledatabase.ListAutonomousDatabaseCharacterSetsResponse( - autonomous_database_character_sets=[ - autonomous_database_character_set.AutonomousDatabaseCharacterSet(), - autonomous_database_character_set.AutonomousDatabaseCharacterSet(), + db_version.ListDbVersionsResponse( + db_versions=[ + db_version.DbVersion(), + db_version.DbVersion(), ], ), + RuntimeError, ) - # Two responses for two calls - response = response + response - # Wrap the values into proper Response objs - response = tuple( - oracledatabase.ListAutonomousDatabaseCharacterSetsResponse.to_json(x) - for x in response + expected_metadata = () + retry = retries.Retry() + timeout = 5 + expected_metadata = tuple(expected_metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", ""),)), ) - return_values = tuple(Response() for i in response) - for return_val, response_val in zip(return_values, response): - return_val._content = response_val.encode("UTF-8") - return_val.status_code = 200 - req.side_effect = return_values - - sample_request = {"parent": "projects/sample1/locations/sample2"} + pager = client.list_db_versions(request={}, retry=retry, timeout=timeout) - pager = client.list_autonomous_database_character_sets(request=sample_request) + assert pager._metadata == expected_metadata + assert pager._retry == retry + assert pager._timeout == timeout results = list(pager) assert len(results) == 6 - assert all( - isinstance( - i, autonomous_database_character_set.AutonomousDatabaseCharacterSet - ) - for i in results + assert all(isinstance(i, db_version.DbVersion) for i in results) + + +def test_list_db_versions_pages(transport_name: str = "grpc"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport_name, + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object(type(client.transport.list_db_versions), "__call__") as call: + # Set the response to a series of pages. + call.side_effect = ( + db_version.ListDbVersionsResponse( + db_versions=[ + db_version.DbVersion(), + db_version.DbVersion(), + db_version.DbVersion(), + ], + next_page_token="abc", + ), + db_version.ListDbVersionsResponse( + db_versions=[], + next_page_token="def", + ), + db_version.ListDbVersionsResponse( + db_versions=[ + db_version.DbVersion(), + ], + next_page_token="ghi", + ), + db_version.ListDbVersionsResponse( + db_versions=[ + db_version.DbVersion(), + db_version.DbVersion(), + ], + ), + RuntimeError, ) + pages = list(client.list_db_versions(request={}).pages) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token - pages = list( - client.list_autonomous_database_character_sets(request=sample_request).pages + +@pytest.mark.asyncio +async def test_list_db_versions_async_pager(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_db_versions), "__call__", new_callable=mock.AsyncMock + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + db_version.ListDbVersionsResponse( + db_versions=[ + db_version.DbVersion(), + db_version.DbVersion(), + db_version.DbVersion(), + ], + next_page_token="abc", + ), + db_version.ListDbVersionsResponse( + db_versions=[], + next_page_token="def", + ), + db_version.ListDbVersionsResponse( + db_versions=[ + db_version.DbVersion(), + ], + next_page_token="ghi", + ), + db_version.ListDbVersionsResponse( + db_versions=[ + db_version.DbVersion(), + db_version.DbVersion(), + ], + ), + RuntimeError, + ) + async_pager = await client.list_db_versions( + request={}, + ) + assert async_pager.next_page_token == "abc" + responses = [] + async for response in async_pager: # pragma: no branch + responses.append(response) + + assert len(responses) == 6 + assert all(isinstance(i, db_version.DbVersion) for i in responses) + + +@pytest.mark.asyncio +async def test_list_db_versions_async_pages(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_db_versions), "__call__", new_callable=mock.AsyncMock + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + db_version.ListDbVersionsResponse( + db_versions=[ + db_version.DbVersion(), + db_version.DbVersion(), + db_version.DbVersion(), + ], + next_page_token="abc", + ), + db_version.ListDbVersionsResponse( + db_versions=[], + next_page_token="def", + ), + db_version.ListDbVersionsResponse( + db_versions=[ + db_version.DbVersion(), + ], + next_page_token="ghi", + ), + db_version.ListDbVersionsResponse( + db_versions=[ + db_version.DbVersion(), + db_version.DbVersion(), + ], + ), + RuntimeError, ) + pages = [] + async for page_ in (await client.list_db_versions(request={})).pages: + pages.append(page_) for page_, token in zip(pages, ["abc", "def", "ghi", ""]): assert page_.raw_page.next_page_token == token -def test_list_autonomous_database_backups_rest_use_cached_wrapped_rpc(): +@pytest.mark.parametrize( + "request_type", + [ + database_character_set.ListDatabaseCharacterSetsRequest(), + {}, + ], +) +def test_list_database_character_sets(request_type, transport: str = "grpc"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_database_character_sets), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = database_character_set.ListDatabaseCharacterSetsResponse( + next_page_token="next_page_token_value", + ) + response = client.list_database_character_sets(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + request = database_character_set.ListDatabaseCharacterSetsRequest() + assert args[0] == request + + # Establish that the response is the type that we expect. + assert isinstance(response, pagers.ListDatabaseCharacterSetsPager) + assert response.next_page_token == "next_page_token_value" + + +def test_list_database_character_sets_non_empty_request_with_auto_populated_field(): + # This test is a coverage failsafe to make sure that UUID4 fields are + # automatically populated, according to AIP-4235, with non-empty requests. + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Populate all string fields in the request which are not UUID4 + # since we want to check that UUID4 are populated automatically + # if they meet the requirements of AIP 4235. + request = database_character_set.ListDatabaseCharacterSetsRequest( + parent="parent_value", + page_token="page_token_value", + filter="filter_value", + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_database_character_sets), "__call__" + ) as call: + call.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client.list_database_character_sets(request=request) + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = database_character_set.ListDatabaseCharacterSetsRequest( + parent="parent_value", + page_token="page_token_value", + filter="filter_value", + ) + assert args[0] == request_msg + + +def test_list_database_character_sets_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport="grpc", ) # Should wrap all calls on client creation @@ -31600,7 +33641,7 @@ def test_list_autonomous_database_backups_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.list_autonomous_database_backups + client._transport.list_database_character_sets in client._transport._wrapped_methods ) @@ -31610,448 +33651,552 @@ def test_list_autonomous_database_backups_rest_use_cached_wrapped_rpc(): "foo" # operation_request.operation in compute client(s) expect a string. ) client._transport._wrapped_methods[ - client._transport.list_autonomous_database_backups + client._transport.list_database_character_sets ] = mock_rpc - request = {} - client.list_autonomous_database_backups(request) + client.list_database_character_sets(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_autonomous_database_backups(request) + client.list_database_character_sets(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_list_autonomous_database_backups_rest_required_fields( - request_type=oracledatabase.ListAutonomousDatabaseBackupsRequest, +@pytest.mark.asyncio +async def test_list_database_character_sets_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", ): - transport_class = transports.OracleDatabaseRestTransport + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) - request_init = {} - request_init["parent"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) - ) + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() - # verify fields with default values are dropped + # Ensure method has been cached + assert ( + client._client._transport.list_database_character_sets + in client._client._transport._wrapped_methods + ) - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).list_autonomous_database_backups._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + # Replace cached wrapped function with mock + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.list_database_character_sets + ] = mock_rpc - # verify required fields with default values are now present + request = {} + await client.list_database_character_sets(request) - jsonified_request["parent"] = "parent_value" + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).list_autonomous_database_backups._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "filter", - "page_size", - "page_token", - ) - ) - jsonified_request.update(unset_fields) + await client.list_database_character_sets(request) - # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + database_character_set.ListDatabaseCharacterSetsRequest(), + {}, + ], +) +async def test_list_database_character_sets_async( + request_type, transport: str = "grpc_asyncio" +): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) + + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_database_character_sets), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + database_character_set.ListDatabaseCharacterSetsResponse( + next_page_token="next_page_token_value", + ) + ) + response = await client.list_database_character_sets(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + request = database_character_set.ListDatabaseCharacterSetsRequest() + assert args[0] == request + + # Establish that the response is the type that we expect. + assert isinstance(response, pagers.ListDatabaseCharacterSetsAsyncPager) + assert response.next_page_token == "next_page_token_value" + +def test_list_database_character_sets_field_headers(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - request = request_type(**request_init) - - # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListAutonomousDatabaseBackupsResponse() - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "get", - "query_params": pb_request, - } - transcode.return_value = transcode_result - response_value = Response() - response_value.status_code = 200 + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = database_character_set.ListDatabaseCharacterSetsRequest() - # Convert return value to protobuf type - return_value = oracledatabase.ListAutonomousDatabaseBackupsResponse.pb( - return_value - ) - json_return_value = json_format.MessageToJson(return_value) + request.parent = "parent_value" - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_database_character_sets), "__call__" + ) as call: + call.return_value = database_character_set.ListDatabaseCharacterSetsResponse() + client.list_database_character_sets(request) - response = client.list_autonomous_database_backups(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert args[0] == request - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "parent=parent_value", + ) in kw["metadata"] -def test_list_autonomous_database_backups_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials +@pytest.mark.asyncio +async def test_list_database_character_sets_field_headers_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - unset_fields = ( - transport.list_autonomous_database_backups._get_unset_required_fields({}) - ) - assert set(unset_fields) == ( - set( - ( - "filter", - "pageSize", - "pageToken", - ) + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = database_character_set.ListDatabaseCharacterSetsRequest() + + request.parent = "parent_value" + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_database_character_sets), "__call__" + ) as call: + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + database_character_set.ListDatabaseCharacterSetsResponse() ) - & set(("parent",)) - ) + await client.list_database_character_sets(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert args[0] == request -def test_list_autonomous_database_backups_rest_flattened(): + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "parent=parent_value", + ) in kw["metadata"] + + +def test_list_database_character_sets_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListAutonomousDatabaseBackupsResponse() + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_database_character_sets), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = database_character_set.ListDatabaseCharacterSetsResponse() + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + client.list_database_character_sets( + parent="parent_value", + ) - # get arguments that satisfy an http rule for this method - sample_request = {"parent": "projects/sample1/locations/sample2"} + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + arg = args[0].parent + mock_val = "parent_value" + assert arg == mock_val - # get truthy value for each flattened field - mock_args = dict( + +def test_list_database_character_sets_flattened_error(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.list_database_character_sets( + database_character_set.ListDatabaseCharacterSetsRequest(), parent="parent_value", ) - mock_args.update(sample_request) - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - # Convert return value to protobuf type - return_value = oracledatabase.ListAutonomousDatabaseBackupsResponse.pb( - return_value - ) - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_autonomous_database_backups(**mock_args) +@pytest.mark.asyncio +async def test_list_database_character_sets_flattened_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_database_character_sets), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = database_character_set.ListDatabaseCharacterSetsResponse() + + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + database_character_set.ListDatabaseCharacterSetsResponse() + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + response = await client.list_database_character_sets( + parent="parent_value", + ) # Establish that the underlying call was made with the expected # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*}/autonomousDatabaseBackups" - % client.transport._host, - args[1], - ) + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + arg = args[0].parent + mock_val = "parent_value" + assert arg == mock_val -def test_list_autonomous_database_backups_rest_flattened_error(transport: str = "rest"): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, +@pytest.mark.asyncio +async def test_list_database_character_sets_flattened_error_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.list_autonomous_database_backups( - oracledatabase.ListAutonomousDatabaseBackupsRequest(), + await client.list_database_character_sets( + database_character_set.ListDatabaseCharacterSetsRequest(), parent="parent_value", ) -def test_list_autonomous_database_backups_rest_pager(transport: str = "rest"): +def test_list_database_character_sets_pager(transport_name: str = "grpc"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport=transport, + transport=transport_name, ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # TODO(kbandes): remove this mock unless there's a good reason for it. - # with mock.patch.object(path_template, 'transcode') as transcode: - # Set the response as a series of pages - response = ( - oracledatabase.ListAutonomousDatabaseBackupsResponse( - autonomous_database_backups=[ - autonomous_db_backup.AutonomousDatabaseBackup(), - autonomous_db_backup.AutonomousDatabaseBackup(), - autonomous_db_backup.AutonomousDatabaseBackup(), + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_database_character_sets), "__call__" + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + database_character_set.ListDatabaseCharacterSetsResponse( + database_character_sets=[ + database_character_set.DatabaseCharacterSet(), + database_character_set.DatabaseCharacterSet(), + database_character_set.DatabaseCharacterSet(), ], next_page_token="abc", ), - oracledatabase.ListAutonomousDatabaseBackupsResponse( - autonomous_database_backups=[], + database_character_set.ListDatabaseCharacterSetsResponse( + database_character_sets=[], next_page_token="def", ), - oracledatabase.ListAutonomousDatabaseBackupsResponse( - autonomous_database_backups=[ - autonomous_db_backup.AutonomousDatabaseBackup(), + database_character_set.ListDatabaseCharacterSetsResponse( + database_character_sets=[ + database_character_set.DatabaseCharacterSet(), ], next_page_token="ghi", ), - oracledatabase.ListAutonomousDatabaseBackupsResponse( - autonomous_database_backups=[ - autonomous_db_backup.AutonomousDatabaseBackup(), - autonomous_db_backup.AutonomousDatabaseBackup(), + database_character_set.ListDatabaseCharacterSetsResponse( + database_character_sets=[ + database_character_set.DatabaseCharacterSet(), + database_character_set.DatabaseCharacterSet(), ], ), + RuntimeError, ) - # Two responses for two calls - response = response + response - # Wrap the values into proper Response objs - response = tuple( - oracledatabase.ListAutonomousDatabaseBackupsResponse.to_json(x) - for x in response + expected_metadata = () + retry = retries.Retry() + timeout = 5 + expected_metadata = tuple(expected_metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", ""),)), + ) + pager = client.list_database_character_sets( + request={}, retry=retry, timeout=timeout ) - return_values = tuple(Response() for i in response) - for return_val, response_val in zip(return_values, response): - return_val._content = response_val.encode("UTF-8") - return_val.status_code = 200 - req.side_effect = return_values - - sample_request = {"parent": "projects/sample1/locations/sample2"} - pager = client.list_autonomous_database_backups(request=sample_request) + assert pager._metadata == expected_metadata + assert pager._retry == retry + assert pager._timeout == timeout results = list(pager) assert len(results) == 6 assert all( - isinstance(i, autonomous_db_backup.AutonomousDatabaseBackup) - for i in results + isinstance(i, database_character_set.DatabaseCharacterSet) for i in results ) - pages = list( - client.list_autonomous_database_backups(request=sample_request).pages + +def test_list_database_character_sets_pages(transport_name: str = "grpc"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport_name, + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_database_character_sets), "__call__" + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + database_character_set.ListDatabaseCharacterSetsResponse( + database_character_sets=[ + database_character_set.DatabaseCharacterSet(), + database_character_set.DatabaseCharacterSet(), + database_character_set.DatabaseCharacterSet(), + ], + next_page_token="abc", + ), + database_character_set.ListDatabaseCharacterSetsResponse( + database_character_sets=[], + next_page_token="def", + ), + database_character_set.ListDatabaseCharacterSetsResponse( + database_character_sets=[ + database_character_set.DatabaseCharacterSet(), + ], + next_page_token="ghi", + ), + database_character_set.ListDatabaseCharacterSetsResponse( + database_character_sets=[ + database_character_set.DatabaseCharacterSet(), + database_character_set.DatabaseCharacterSet(), + ], + ), + RuntimeError, ) + pages = list(client.list_database_character_sets(request={}).pages) for page_, token in zip(pages, ["abc", "def", "ghi", ""]): assert page_.raw_page.next_page_token == token -def test_stop_autonomous_database_rest_use_cached_wrapped_rpc(): - # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, - # instead of constructing them on each call - with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", - ) - - # Should wrap all calls on client creation - assert wrapper_fn.call_count > 0 - wrapper_fn.reset_mock() +@pytest.mark.asyncio +async def test_list_database_character_sets_async_pager(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) - # Ensure method has been cached - assert ( - client._transport.stop_autonomous_database - in client._transport._wrapped_methods + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_database_character_sets), + "__call__", + new_callable=mock.AsyncMock, + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + database_character_set.ListDatabaseCharacterSetsResponse( + database_character_sets=[ + database_character_set.DatabaseCharacterSet(), + database_character_set.DatabaseCharacterSet(), + database_character_set.DatabaseCharacterSet(), + ], + next_page_token="abc", + ), + database_character_set.ListDatabaseCharacterSetsResponse( + database_character_sets=[], + next_page_token="def", + ), + database_character_set.ListDatabaseCharacterSetsResponse( + database_character_sets=[ + database_character_set.DatabaseCharacterSet(), + ], + next_page_token="ghi", + ), + database_character_set.ListDatabaseCharacterSetsResponse( + database_character_sets=[ + database_character_set.DatabaseCharacterSet(), + database_character_set.DatabaseCharacterSet(), + ], + ), + RuntimeError, ) + async_pager = await client.list_database_character_sets( + request={}, + ) + assert async_pager.next_page_token == "abc" + responses = [] + async for response in async_pager: # pragma: no branch + responses.append(response) - # Replace cached wrapped function with mock - mock_rpc = mock.Mock() - mock_rpc.return_value.name = ( - "foo" # operation_request.operation in compute client(s) expect a string. + assert len(responses) == 6 + assert all( + isinstance(i, database_character_set.DatabaseCharacterSet) + for i in responses ) - client._transport._wrapped_methods[ - client._transport.stop_autonomous_database - ] = mock_rpc - request = {} - client.stop_autonomous_database(request) - # Establish that the underlying gRPC stub method was called. - assert mock_rpc.call_count == 1 +@pytest.mark.asyncio +async def test_list_database_character_sets_async_pages(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) - # Operation methods build a cached wrapper on first rpc call - # subsequent calls should use the cached wrapper - wrapper_fn.reset_mock() + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_database_character_sets), + "__call__", + new_callable=mock.AsyncMock, + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + database_character_set.ListDatabaseCharacterSetsResponse( + database_character_sets=[ + database_character_set.DatabaseCharacterSet(), + database_character_set.DatabaseCharacterSet(), + database_character_set.DatabaseCharacterSet(), + ], + next_page_token="abc", + ), + database_character_set.ListDatabaseCharacterSetsResponse( + database_character_sets=[], + next_page_token="def", + ), + database_character_set.ListDatabaseCharacterSetsResponse( + database_character_sets=[ + database_character_set.DatabaseCharacterSet(), + ], + next_page_token="ghi", + ), + database_character_set.ListDatabaseCharacterSetsResponse( + database_character_sets=[ + database_character_set.DatabaseCharacterSet(), + database_character_set.DatabaseCharacterSet(), + ], + ), + RuntimeError, + ) + pages = [] + async for page_ in ( + await client.list_database_character_sets(request={}) + ).pages: + pages.append(page_) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token - client.stop_autonomous_database(request) - # Establish that a new wrapper was not created for this call - assert wrapper_fn.call_count == 0 - assert mock_rpc.call_count == 2 +@pytest.mark.parametrize( + "request_type", + [ + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest(), + {}, + ], +) +def test_list_goldengate_connection_assignments(request_type, transport: str = "grpc"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type -def test_stop_autonomous_database_rest_required_fields( - request_type=oracledatabase.StopAutonomousDatabaseRequest, -): - transport_class = transports.OracleDatabaseRestTransport + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_assignments), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) + response = client.list_goldengate_connection_assignments(request) - request_init = {} - request_init["name"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) - ) - - # verify fields with default values are dropped - - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).stop_autonomous_database._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) - - # verify required fields with default values are now present - - jsonified_request["name"] = "name_value" - - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).stop_autonomous_database._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) - - # verify required fields with non-default values are left alone - assert "name" in jsonified_request - assert jsonified_request["name"] == "name_value" - - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", - ) - request = request_type(**request_init) - - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "post", - "query_params": pb_request, - } - transcode_result["body"] = pb_request - transcode.return_value = transcode_result - - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) - - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - - response = client.stop_autonomous_database(request) - - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) - - -def test_stop_autonomous_database_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials - ) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + request = goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest() + assert args[0] == request - unset_fields = transport.stop_autonomous_database._get_unset_required_fields({}) - assert set(unset_fields) == (set(()) & set(("name",))) + # Establish that the response is the type that we expect. + assert isinstance(response, pagers.ListGoldengateConnectionAssignmentsPager) + assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] -def test_stop_autonomous_database_rest_flattened(): +def test_list_goldengate_connection_assignments_non_empty_request_with_auto_populated_field(): + # This test is a coverage failsafe to make sure that UUID4 fields are + # automatically populated, according to AIP-4235, with non-empty requests. client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport="grpc", ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - - # get arguments that satisfy an http rule for this method - sample_request = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" - } - - # get truthy value for each flattened field - mock_args = dict( - name="name_value", - ) - mock_args.update(sample_request) - - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - - client.stop_autonomous_database(**mock_args) - - # Establish that the underlying call was made with the expected - # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{name=projects/*/locations/*/autonomousDatabases/*}:stop" - % client.transport._host, - args[1], + # Populate all string fields in the request which are not UUID4 + # since we want to check that UUID4 are populated automatically + # if they meet the requirements of AIP 4235. + request = ( + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest( + parent="parent_value", + page_token="page_token_value", + filter="filter_value", + order_by="order_by_value", ) - - -def test_stop_autonomous_database_rest_flattened_error(transport: str = "rest"): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, ) - # Attempting to call a method with both a request object and flattened - # fields is an error. - with pytest.raises(ValueError): - client.stop_autonomous_database( - oracledatabase.StopAutonomousDatabaseRequest(), - name="name_value", + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_assignments), "__call__" + ) as call: + call.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client.list_goldengate_connection_assignments(request=request) + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = ( + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest( + parent="parent_value", + page_token="page_token_value", + filter="filter_value", + order_by="order_by_value", + ) ) + assert args[0] == request_msg -def test_start_autonomous_database_rest_use_cached_wrapped_rpc(): +def test_list_goldengate_connection_assignments_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport="grpc", ) # Should wrap all calls on client creation @@ -32060,7 +34205,7 @@ def test_start_autonomous_database_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.start_autonomous_database + client._transport.list_goldengate_connection_assignments in client._transport._wrapped_methods ) @@ -32070,173 +34215,31 @@ def test_start_autonomous_database_rest_use_cached_wrapped_rpc(): "foo" # operation_request.operation in compute client(s) expect a string. ) client._transport._wrapped_methods[ - client._transport.start_autonomous_database + client._transport.list_goldengate_connection_assignments ] = mock_rpc - request = {} - client.start_autonomous_database(request) + client.list_goldengate_connection_assignments(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - # Operation methods build a cached wrapper on first rpc call - # subsequent calls should use the cached wrapper - wrapper_fn.reset_mock() - - client.start_autonomous_database(request) + client.list_goldengate_connection_assignments(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_start_autonomous_database_rest_required_fields( - request_type=oracledatabase.StartAutonomousDatabaseRequest, +@pytest.mark.asyncio +async def test_list_goldengate_connection_assignments_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", ): - transport_class = transports.OracleDatabaseRestTransport - - request_init = {} - request_init["name"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) - ) - - # verify fields with default values are dropped - - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).start_autonomous_database._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) - - # verify required fields with default values are now present - - jsonified_request["name"] = "name_value" - - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).start_autonomous_database._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) - - # verify required fields with non-default values are left alone - assert "name" in jsonified_request - assert jsonified_request["name"] == "name_value" - - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", - ) - request = request_type(**request_init) - - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "post", - "query_params": pb_request, - } - transcode_result["body"] = pb_request - transcode.return_value = transcode_result - - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) - - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - - response = client.start_autonomous_database(request) - - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) - - -def test_start_autonomous_database_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials - ) - - unset_fields = transport.start_autonomous_database._get_unset_required_fields({}) - assert set(unset_fields) == (set(()) & set(("name",))) - - -def test_start_autonomous_database_rest_flattened(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", - ) - - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - - # get arguments that satisfy an http rule for this method - sample_request = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" - } - - # get truthy value for each flattened field - mock_args = dict( - name="name_value", - ) - mock_args.update(sample_request) - - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - - client.start_autonomous_database(**mock_args) - - # Establish that the underlying call was made with the expected - # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{name=projects/*/locations/*/autonomousDatabases/*}:start" - % client.transport._host, - args[1], - ) - - -def test_start_autonomous_database_rest_flattened_error(transport: str = "rest"): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, - ) - - # Attempting to call a method with both a request object and flattened - # fields is an error. - with pytest.raises(ValueError): - client.start_autonomous_database( - oracledatabase.StartAutonomousDatabaseRequest(), - name="name_value", - ) - - -def test_restart_autonomous_database_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call - with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, ) # Should wrap all calls on client creation @@ -32245,386 +34248,530 @@ def test_restart_autonomous_database_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.restart_autonomous_database - in client._transport._wrapped_methods + client._client._transport.list_goldengate_connection_assignments + in client._client._transport._wrapped_methods ) # Replace cached wrapped function with mock - mock_rpc = mock.Mock() - mock_rpc.return_value.name = ( - "foo" # operation_request.operation in compute client(s) expect a string. - ) - client._transport._wrapped_methods[ - client._transport.restart_autonomous_database + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.list_goldengate_connection_assignments ] = mock_rpc request = {} - client.restart_autonomous_database(request) + await client.list_goldengate_connection_assignments(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - # Operation methods build a cached wrapper on first rpc call - # subsequent calls should use the cached wrapper - wrapper_fn.reset_mock() - - client.restart_autonomous_database(request) + await client.list_goldengate_connection_assignments(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_restart_autonomous_database_rest_required_fields( - request_type=oracledatabase.RestartAutonomousDatabaseRequest, +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest(), + {}, + ], +) +async def test_list_goldengate_connection_assignments_async( + request_type, transport: str = "grpc_asyncio" ): - transport_class = transports.OracleDatabaseRestTransport - - request_init = {} - request_init["name"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, ) - # verify fields with default values are dropped - - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).restart_autonomous_database._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type - # verify required fields with default values are now present + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_assignments), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) + ) + response = await client.list_goldengate_connection_assignments(request) - jsonified_request["name"] = "name_value" + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + request = goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest() + assert args[0] == request - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).restart_autonomous_database._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + # Establish that the response is the type that we expect. + assert isinstance(response, pagers.ListGoldengateConnectionAssignmentsAsyncPager) + assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] - # verify required fields with non-default values are left alone - assert "name" in jsonified_request - assert jsonified_request["name"] == "name_value" +def test_list_goldengate_connection_assignments_field_headers(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - request = request_type(**request_init) - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "post", - "query_params": pb_request, - } - transcode_result["body"] = pb_request - transcode.return_value = transcode_result + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = ( + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest() + ) - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) + request.parent = "parent_value" - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_assignments), "__call__" + ) as call: + call.return_value = goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse() + client.list_goldengate_connection_assignments(request) - response = client.restart_autonomous_database(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert args[0] == request - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "parent=parent_value", + ) in kw["metadata"] -def test_restart_autonomous_database_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials +@pytest.mark.asyncio +async def test_list_goldengate_connection_assignments_field_headers_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - unset_fields = transport.restart_autonomous_database._get_unset_required_fields({}) - assert set(unset_fields) == (set(()) & set(("name",))) + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = ( + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest() + ) + request.parent = "parent_value" -def test_restart_autonomous_database_rest_flattened(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", - ) + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_assignments), "__call__" + ) as call: + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse() + ) + await client.list_goldengate_connection_assignments(request) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert args[0] == request - # get arguments that satisfy an http rule for this method - sample_request = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" - } + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "parent=parent_value", + ) in kw["metadata"] - # get truthy value for each flattened field - mock_args = dict( - name="name_value", - ) - mock_args.update(sample_request) - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} +def test_list_goldengate_connection_assignments_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + ) - client.restart_autonomous_database(**mock_args) + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_assignments), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse() + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + client.list_goldengate_connection_assignments( + parent="parent_value", + ) # Establish that the underlying call was made with the expected # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{name=projects/*/locations/*/autonomousDatabases/*}:restart" - % client.transport._host, - args[1], - ) + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + arg = args[0].parent + mock_val = "parent_value" + assert arg == mock_val -def test_restart_autonomous_database_rest_flattened_error(transport: str = "rest"): +def test_list_goldengate_connection_assignments_flattened_error(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport=transport, ) # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.restart_autonomous_database( - oracledatabase.RestartAutonomousDatabaseRequest(), - name="name_value", + client.list_goldengate_connection_assignments( + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest(), + parent="parent_value", ) -def test_switchover_autonomous_database_rest_use_cached_wrapped_rpc(): - # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, - # instead of constructing them on each call - with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", - ) +@pytest.mark.asyncio +async def test_list_goldengate_connection_assignments_flattened_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) - # Should wrap all calls on client creation - assert wrapper_fn.call_count > 0 - wrapper_fn.reset_mock() + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_assignments), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse() - # Ensure method has been cached - assert ( - client._transport.switchover_autonomous_database - in client._transport._wrapped_methods + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse() ) - - # Replace cached wrapped function with mock - mock_rpc = mock.Mock() - mock_rpc.return_value.name = ( - "foo" # operation_request.operation in compute client(s) expect a string. + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + response = await client.list_goldengate_connection_assignments( + parent="parent_value", ) - client._transport._wrapped_methods[ - client._transport.switchover_autonomous_database - ] = mock_rpc - - request = {} - client.switchover_autonomous_database(request) - - # Establish that the underlying gRPC stub method was called. - assert mock_rpc.call_count == 1 - # Operation methods build a cached wrapper on first rpc call - # subsequent calls should use the cached wrapper - wrapper_fn.reset_mock() + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + arg = args[0].parent + mock_val = "parent_value" + assert arg == mock_val - client.switchover_autonomous_database(request) - # Establish that a new wrapper was not created for this call - assert wrapper_fn.call_count == 0 - assert mock_rpc.call_count == 2 +@pytest.mark.asyncio +async def test_list_goldengate_connection_assignments_flattened_error_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + await client.list_goldengate_connection_assignments( + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest(), + parent="parent_value", + ) -def test_switchover_autonomous_database_rest_required_fields( - request_type=oracledatabase.SwitchoverAutonomousDatabaseRequest, -): - transport_class = transports.OracleDatabaseRestTransport - request_init = {} - request_init["name"] = "" - request_init["peer_autonomous_database"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) +def test_list_goldengate_connection_assignments_pager(transport_name: str = "grpc"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport_name, ) - # verify fields with default values are dropped - - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).switchover_autonomous_database._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_assignments), "__call__" + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse( + goldengate_connection_assignments=[ + goldengate_connection_assignment.GoldengateConnectionAssignment(), + goldengate_connection_assignment.GoldengateConnectionAssignment(), + goldengate_connection_assignment.GoldengateConnectionAssignment(), + ], + next_page_token="abc", + ), + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse( + goldengate_connection_assignments=[], + next_page_token="def", + ), + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse( + goldengate_connection_assignments=[ + goldengate_connection_assignment.GoldengateConnectionAssignment(), + ], + next_page_token="ghi", + ), + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse( + goldengate_connection_assignments=[ + goldengate_connection_assignment.GoldengateConnectionAssignment(), + goldengate_connection_assignment.GoldengateConnectionAssignment(), + ], + ), + RuntimeError, + ) - # verify required fields with default values are now present + expected_metadata = () + retry = retries.Retry() + timeout = 5 + expected_metadata = tuple(expected_metadata) + ( + gapic_v1.routing_header.to_grpc_metadata((("parent", ""),)), + ) + pager = client.list_goldengate_connection_assignments( + request={}, retry=retry, timeout=timeout + ) - jsonified_request["name"] = "name_value" - jsonified_request["peerAutonomousDatabase"] = "peer_autonomous_database_value" + assert pager._metadata == expected_metadata + assert pager._retry == retry + assert pager._timeout == timeout - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).switchover_autonomous_database._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + results = list(pager) + assert len(results) == 6 + assert all( + isinstance( + i, goldengate_connection_assignment.GoldengateConnectionAssignment + ) + for i in results + ) - # verify required fields with non-default values are left alone - assert "name" in jsonified_request - assert jsonified_request["name"] == "name_value" - assert "peerAutonomousDatabase" in jsonified_request - assert ( - jsonified_request["peerAutonomousDatabase"] == "peer_autonomous_database_value" - ) +def test_list_goldengate_connection_assignments_pages(transport_name: str = "grpc"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport=transport_name, ) - request = request_type(**request_init) - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "post", - "query_params": pb_request, - } - transcode_result["body"] = pb_request - transcode.return_value = transcode_result + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_assignments), "__call__" + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse( + goldengate_connection_assignments=[ + goldengate_connection_assignment.GoldengateConnectionAssignment(), + goldengate_connection_assignment.GoldengateConnectionAssignment(), + goldengate_connection_assignment.GoldengateConnectionAssignment(), + ], + next_page_token="abc", + ), + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse( + goldengate_connection_assignments=[], + next_page_token="def", + ), + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse( + goldengate_connection_assignments=[ + goldengate_connection_assignment.GoldengateConnectionAssignment(), + ], + next_page_token="ghi", + ), + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse( + goldengate_connection_assignments=[ + goldengate_connection_assignment.GoldengateConnectionAssignment(), + goldengate_connection_assignment.GoldengateConnectionAssignment(), + ], + ), + RuntimeError, + ) + pages = list(client.list_goldengate_connection_assignments(request={}).pages) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} +@pytest.mark.asyncio +async def test_list_goldengate_connection_assignments_async_pager(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) - response = client.switchover_autonomous_database(request) + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_assignments), + "__call__", + new_callable=mock.AsyncMock, + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse( + goldengate_connection_assignments=[ + goldengate_connection_assignment.GoldengateConnectionAssignment(), + goldengate_connection_assignment.GoldengateConnectionAssignment(), + goldengate_connection_assignment.GoldengateConnectionAssignment(), + ], + next_page_token="abc", + ), + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse( + goldengate_connection_assignments=[], + next_page_token="def", + ), + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse( + goldengate_connection_assignments=[ + goldengate_connection_assignment.GoldengateConnectionAssignment(), + ], + next_page_token="ghi", + ), + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse( + goldengate_connection_assignments=[ + goldengate_connection_assignment.GoldengateConnectionAssignment(), + goldengate_connection_assignment.GoldengateConnectionAssignment(), + ], + ), + RuntimeError, + ) + async_pager = await client.list_goldengate_connection_assignments( + request={}, + ) + assert async_pager.next_page_token == "abc" + responses = [] + async for response in async_pager: # pragma: no branch + responses.append(response) - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) + assert len(responses) == 6 + assert all( + isinstance( + i, goldengate_connection_assignment.GoldengateConnectionAssignment + ) + for i in responses + ) -def test_switchover_autonomous_database_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials +@pytest.mark.asyncio +async def test_list_goldengate_connection_assignments_async_pages(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - unset_fields = transport.switchover_autonomous_database._get_unset_required_fields( - {} - ) - assert set(unset_fields) == ( - set(()) - & set( - ( - "name", - "peerAutonomousDatabase", - ) + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_assignments), + "__call__", + new_callable=mock.AsyncMock, + ) as call: + # Set the response to a series of pages. + call.side_effect = ( + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse( + goldengate_connection_assignments=[ + goldengate_connection_assignment.GoldengateConnectionAssignment(), + goldengate_connection_assignment.GoldengateConnectionAssignment(), + goldengate_connection_assignment.GoldengateConnectionAssignment(), + ], + next_page_token="abc", + ), + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse( + goldengate_connection_assignments=[], + next_page_token="def", + ), + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse( + goldengate_connection_assignments=[ + goldengate_connection_assignment.GoldengateConnectionAssignment(), + ], + next_page_token="ghi", + ), + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse( + goldengate_connection_assignments=[ + goldengate_connection_assignment.GoldengateConnectionAssignment(), + goldengate_connection_assignment.GoldengateConnectionAssignment(), + ], + ), + RuntimeError, ) - ) + pages = [] + async for page_ in ( + await client.list_goldengate_connection_assignments(request={}) + ).pages: + pages.append(page_) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token -def test_switchover_autonomous_database_rest_flattened(): +@pytest.mark.parametrize( + "request_type", + [ + goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest(), + {}, + ], +) +def test_get_goldengate_connection_assignment(request_type, transport: str = "grpc"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport=transport, ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - - # get arguments that satisfy an http rule for this method - sample_request = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" - } + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type - # get truthy value for each flattened field - mock_args = dict( - name="name_value", - peer_autonomous_database="peer_autonomous_database_value", + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection_assignment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = ( + goldengate_connection_assignment.GoldengateConnectionAssignment( + name="name_value", + display_name="display_name_value", + entitlement_id="entitlement_id_value", + ) ) - mock_args.update(sample_request) - - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.get_goldengate_connection_assignment(request) - client.switchover_autonomous_database(**mock_args) - - # Establish that the underlying call was made with the expected - # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{name=projects/*/locations/*/autonomousDatabases/*}:switchover" - % client.transport._host, - args[1], + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + request = ( + goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest() ) + assert args[0] == request + + # Establish that the response is the type that we expect. + assert isinstance( + response, goldengate_connection_assignment.GoldengateConnectionAssignment + ) + assert response.name == "name_value" + assert response.display_name == "display_name_value" + assert response.entitlement_id == "entitlement_id_value" -def test_switchover_autonomous_database_rest_flattened_error(transport: str = "rest"): +def test_get_goldengate_connection_assignment_non_empty_request_with_auto_populated_field(): + # This test is a coverage failsafe to make sure that UUID4 fields are + # automatically populated, according to AIP-4235, with non-empty requests. client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport=transport, + transport="grpc", ) - # Attempting to call a method with both a request object and flattened - # fields is an error. - with pytest.raises(ValueError): - client.switchover_autonomous_database( - oracledatabase.SwitchoverAutonomousDatabaseRequest(), - name="name_value", - peer_autonomous_database="peer_autonomous_database_value", + # Populate all string fields in the request which are not UUID4 + # since we want to check that UUID4 are populated automatically + # if they meet the requirements of AIP 4235. + request = goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest( + name="name_value", + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection_assignment), "__call__" + ) as call: + call.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client.get_goldengate_connection_assignment(request=request) + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = ( + goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest( + name="name_value", + ) ) + assert args[0] == request_msg -def test_failover_autonomous_database_rest_use_cached_wrapped_rpc(): +def test_get_goldengate_connection_assignment_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport="grpc", ) # Should wrap all calls on client creation @@ -32633,7 +34780,7 @@ def test_failover_autonomous_database_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.failover_autonomous_database + client._transport.get_goldengate_connection_assignment in client._transport._wrapped_methods ) @@ -32643,189 +34790,350 @@ def test_failover_autonomous_database_rest_use_cached_wrapped_rpc(): "foo" # operation_request.operation in compute client(s) expect a string. ) client._transport._wrapped_methods[ - client._transport.failover_autonomous_database + client._transport.get_goldengate_connection_assignment ] = mock_rpc - request = {} - client.failover_autonomous_database(request) + client.get_goldengate_connection_assignment(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - # Operation methods build a cached wrapper on first rpc call - # subsequent calls should use the cached wrapper - wrapper_fn.reset_mock() - - client.failover_autonomous_database(request) + client.get_goldengate_connection_assignment(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_failover_autonomous_database_rest_required_fields( - request_type=oracledatabase.FailoverAutonomousDatabaseRequest, +@pytest.mark.asyncio +async def test_get_goldengate_connection_assignment_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", ): - transport_class = transports.OracleDatabaseRestTransport - - request_init = {} - request_init["name"] = "" - request_init["peer_autonomous_database"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) - ) - - # verify fields with default values are dropped - - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).failover_autonomous_database._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) - - # verify required fields with default values are now present - - jsonified_request["name"] = "name_value" - jsonified_request["peerAutonomousDatabase"] = "peer_autonomous_database_value" - - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).failover_autonomous_database._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) - # verify required fields with non-default values are left alone - assert "name" in jsonified_request - assert jsonified_request["name"] == "name_value" - assert "peerAutonomousDatabase" in jsonified_request - assert ( - jsonified_request["peerAutonomousDatabase"] == "peer_autonomous_database_value" - ) + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", - ) - request = request_type(**request_init) + # Ensure method has been cached + assert ( + client._client._transport.get_goldengate_connection_assignment + in client._client._transport._wrapped_methods + ) - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "post", - "query_params": pb_request, - } - transcode_result["body"] = pb_request - transcode.return_value = transcode_result + # Replace cached wrapped function with mock + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.get_goldengate_connection_assignment + ] = mock_rpc - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) + request = {} + await client.get_goldengate_connection_assignment(request) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 - response = client.failover_autonomous_database(request) + await client.get_goldengate_connection_assignment(request) - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 -def test_failover_autonomous_database_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest(), + {}, + ], +) +async def test_get_goldengate_connection_assignment_async( + request_type, transport: str = "grpc_asyncio" +): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, ) - unset_fields = transport.failover_autonomous_database._get_unset_required_fields({}) - assert set(unset_fields) == ( - set(()) - & set( - ( - "name", - "peerAutonomousDatabase", + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection_assignment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection_assignment.GoldengateConnectionAssignment( + name="name_value", + display_name="display_name_value", + entitlement_id="entitlement_id_value", ) ) + response = await client.get_goldengate_connection_assignment(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + request = ( + goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest() + ) + assert args[0] == request + + # Establish that the response is the type that we expect. + assert isinstance( + response, goldengate_connection_assignment.GoldengateConnectionAssignment ) + assert response.name == "name_value" + assert response.display_name == "display_name_value" + assert response.entitlement_id == "entitlement_id_value" -def test_failover_autonomous_database_rest_flattened(): +def test_get_goldengate_connection_assignment_field_headers(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = ( + goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest() + ) - # get arguments that satisfy an http rule for this method - sample_request = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" - } + request.name = "name_value" - # get truthy value for each flattened field - mock_args = dict( - name="name_value", - peer_autonomous_database="peer_autonomous_database_value", + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection_assignment), "__call__" + ) as call: + call.return_value = ( + goldengate_connection_assignment.GoldengateConnectionAssignment() ) - mock_args.update(sample_request) + client.get_goldengate_connection_assignment(request) - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert args[0] == request - client.failover_autonomous_database(**mock_args) + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "name=name_value", + ) in kw["metadata"] + + +@pytest.mark.asyncio +async def test_get_goldengate_connection_assignment_field_headers_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = ( + goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest() + ) + + request.name = "name_value" + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection_assignment), "__call__" + ) as call: + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection_assignment.GoldengateConnectionAssignment() + ) + await client.get_goldengate_connection_assignment(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert args[0] == request + + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "name=name_value", + ) in kw["metadata"] + + +def test_get_goldengate_connection_assignment_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection_assignment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = ( + goldengate_connection_assignment.GoldengateConnectionAssignment() + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + client.get_goldengate_connection_assignment( + name="name_value", + ) # Establish that the underlying call was made with the expected # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{name=projects/*/locations/*/autonomousDatabases/*}:failover" - % client.transport._host, - args[1], - ) + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + arg = args[0].name + mock_val = "name_value" + assert arg == mock_val -def test_failover_autonomous_database_rest_flattened_error(transport: str = "rest"): +def test_get_goldengate_connection_assignment_flattened_error(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport=transport, ) # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.failover_autonomous_database( - oracledatabase.FailoverAutonomousDatabaseRequest(), + client.get_goldengate_connection_assignment( + goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest(), name="name_value", - peer_autonomous_database="peer_autonomous_database_value", ) -def test_list_odb_networks_rest_use_cached_wrapped_rpc(): +@pytest.mark.asyncio +async def test_get_goldengate_connection_assignment_flattened_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection_assignment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = ( + goldengate_connection_assignment.GoldengateConnectionAssignment() + ) + + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection_assignment.GoldengateConnectionAssignment() + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + response = await client.get_goldengate_connection_assignment( + name="name_value", + ) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + arg = args[0].name + mock_val = "name_value" + assert arg == mock_val + + +@pytest.mark.asyncio +async def test_get_goldengate_connection_assignment_flattened_error_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + await client.get_goldengate_connection_assignment( + goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest(), + name="name_value", + ) + + +@pytest.mark.parametrize( + "request_type", + [ + gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest(), + {}, + ], +) +def test_create_goldengate_connection_assignment(request_type, transport: str = "grpc"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_connection_assignment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/spam") + response = client.create_goldengate_connection_assignment(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + request = gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest() + assert args[0] == request + + # Establish that the response is the type that we expect. + assert isinstance(response, future.Future) + + +def test_create_goldengate_connection_assignment_non_empty_request_with_auto_populated_field(): + # This test is a coverage failsafe to make sure that UUID4 fields are + # automatically populated, according to AIP-4235, with non-empty requests. + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Populate all string fields in the request which are not UUID4 + # since we want to check that UUID4 are populated automatically + # if they meet the requirements of AIP 4235. + request = gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest( + parent="parent_value", + goldengate_connection_assignment_id="goldengate_connection_assignment_id_value", + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_connection_assignment), "__call__" + ) as call: + call.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client.create_goldengate_connection_assignment(request=request) + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest( + parent="parent_value", + goldengate_connection_assignment_id="goldengate_connection_assignment_id_value", + ) + assert args[0] == request_msg + + +def test_create_goldengate_connection_assignment_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport="grpc", ) # Should wrap all calls on client creation @@ -32833,261 +35141,382 @@ def test_list_odb_networks_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert client._transport.list_odb_networks in client._transport._wrapped_methods + assert ( + client._transport.create_goldengate_connection_assignment + in client._transport._wrapped_methods + ) # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.list_odb_networks] = ( - mock_rpc - ) - + client._transport._wrapped_methods[ + client._transport.create_goldengate_connection_assignment + ] = mock_rpc request = {} - client.list_odb_networks(request) + client.create_goldengate_connection_assignment(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_odb_networks(request) + # Operation methods call wrapper_fn to build a cached + # client._transport.operations_client instance on first rpc call. + # Subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.create_goldengate_connection_assignment(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_list_odb_networks_rest_required_fields( - request_type=odb_network.ListOdbNetworksRequest, +@pytest.mark.asyncio +async def test_create_goldengate_connection_assignment_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", ): - transport_class = transports.OracleDatabaseRestTransport + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) - request_init = {} - request_init["parent"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) - ) + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() - # verify fields with default values are dropped + # Ensure method has been cached + assert ( + client._client._transport.create_goldengate_connection_assignment + in client._client._transport._wrapped_methods + ) - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).list_odb_networks._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + # Replace cached wrapped function with mock + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.create_goldengate_connection_assignment + ] = mock_rpc - # verify required fields with default values are now present + request = {} + await client.create_goldengate_connection_assignment(request) - jsonified_request["parent"] = "parent_value" + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).list_odb_networks._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "filter", - "order_by", - "page_size", - "page_token", - ) + # Operation methods call wrapper_fn to build a cached + # client._transport.operations_client instance on first rpc call. + # Subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + await client.create_goldengate_connection_assignment(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest(), + {}, + ], +) +async def test_create_goldengate_connection_assignment_async( + request_type, transport: str = "grpc_asyncio" +): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, ) - jsonified_request.update(unset_fields) - # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_connection_assignment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + response = await client.create_goldengate_connection_assignment(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + request = gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest() + assert args[0] == request + + # Establish that the response is the type that we expect. + assert isinstance(response, future.Future) + +def test_create_goldengate_connection_assignment_field_headers(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - request = request_type(**request_init) - - # Designate an appropriate value for the returned response. - return_value = odb_network.ListOdbNetworksResponse() - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "get", - "query_params": pb_request, - } - transcode.return_value = transcode_result - response_value = Response() - response_value.status_code = 200 + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest() - # Convert return value to protobuf type - return_value = odb_network.ListOdbNetworksResponse.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) + request.parent = "parent_value" - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_connection_assignment), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.create_goldengate_connection_assignment(request) - response = client.list_odb_networks(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert args[0] == request - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "parent=parent_value", + ) in kw["metadata"] -def test_list_odb_networks_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials +@pytest.mark.asyncio +async def test_create_goldengate_connection_assignment_field_headers_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - unset_fields = transport.list_odb_networks._get_unset_required_fields({}) - assert set(unset_fields) == ( - set( - ( - "filter", - "orderBy", - "pageSize", - "pageToken", - ) + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest() + + request.parent = "parent_value" + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_connection_assignment), "__call__" + ) as call: + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/op") ) - & set(("parent",)) - ) + await client.create_goldengate_connection_assignment(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert args[0] == request -def test_list_odb_networks_rest_flattened(): + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "parent=parent_value", + ) in kw["metadata"] + + +def test_create_goldengate_connection_assignment_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = odb_network.ListOdbNetworksResponse() + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_connection_assignment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/op") + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + client.create_goldengate_connection_assignment( + parent="parent_value", + goldengate_connection_assignment=gco_goldengate_connection_assignment.GoldengateConnectionAssignment( + name="name_value" + ), + goldengate_connection_assignment_id="goldengate_connection_assignment_id_value", + ) - # get arguments that satisfy an http rule for this method - sample_request = {"parent": "projects/sample1/locations/sample2"} + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + arg = args[0].parent + mock_val = "parent_value" + assert arg == mock_val + arg = args[0].goldengate_connection_assignment + mock_val = gco_goldengate_connection_assignment.GoldengateConnectionAssignment( + name="name_value" + ) + assert arg == mock_val + arg = args[0].goldengate_connection_assignment_id + mock_val = "goldengate_connection_assignment_id_value" + assert arg == mock_val - # get truthy value for each flattened field - mock_args = dict( + +def test_create_goldengate_connection_assignment_flattened_error(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.create_goldengate_connection_assignment( + gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest(), parent="parent_value", + goldengate_connection_assignment=gco_goldengate_connection_assignment.GoldengateConnectionAssignment( + name="name_value" + ), + goldengate_connection_assignment_id="goldengate_connection_assignment_id_value", ) - mock_args.update(sample_request) - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - # Convert return value to protobuf type - return_value = odb_network.ListOdbNetworksResponse.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_odb_networks(**mock_args) +@pytest.mark.asyncio +async def test_create_goldengate_connection_assignment_flattened_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_connection_assignment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/op") + + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + response = await client.create_goldengate_connection_assignment( + parent="parent_value", + goldengate_connection_assignment=gco_goldengate_connection_assignment.GoldengateConnectionAssignment( + name="name_value" + ), + goldengate_connection_assignment_id="goldengate_connection_assignment_id_value", + ) # Establish that the underlying call was made with the expected # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*}/odbNetworks" - % client.transport._host, - args[1], + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + arg = args[0].parent + mock_val = "parent_value" + assert arg == mock_val + arg = args[0].goldengate_connection_assignment + mock_val = gco_goldengate_connection_assignment.GoldengateConnectionAssignment( + name="name_value" ) + assert arg == mock_val + arg = args[0].goldengate_connection_assignment_id + mock_val = "goldengate_connection_assignment_id_value" + assert arg == mock_val -def test_list_odb_networks_rest_flattened_error(transport: str = "rest"): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, +@pytest.mark.asyncio +async def test_create_goldengate_connection_assignment_flattened_error_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.list_odb_networks( - odb_network.ListOdbNetworksRequest(), + await client.create_goldengate_connection_assignment( + gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest(), parent="parent_value", + goldengate_connection_assignment=gco_goldengate_connection_assignment.GoldengateConnectionAssignment( + name="name_value" + ), + goldengate_connection_assignment_id="goldengate_connection_assignment_id_value", ) -def test_list_odb_networks_rest_pager(transport: str = "rest"): +@pytest.mark.parametrize( + "request_type", + [ + goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest(), + {}, + ], +) +def test_delete_goldengate_connection_assignment(request_type, transport: str = "grpc"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # TODO(kbandes): remove this mock unless there's a good reason for it. - # with mock.patch.object(path_template, 'transcode') as transcode: - # Set the response as a series of pages - response = ( - odb_network.ListOdbNetworksResponse( - odb_networks=[ - odb_network.OdbNetwork(), - odb_network.OdbNetwork(), - odb_network.OdbNetwork(), - ], - next_page_token="abc", - ), - odb_network.ListOdbNetworksResponse( - odb_networks=[], - next_page_token="def", - ), - odb_network.ListOdbNetworksResponse( - odb_networks=[ - odb_network.OdbNetwork(), - ], - next_page_token="ghi", - ), - odb_network.ListOdbNetworksResponse( - odb_networks=[ - odb_network.OdbNetwork(), - odb_network.OdbNetwork(), - ], - ), - ) - # Two responses for two calls - response = response + response + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type - # Wrap the values into proper Response objs - response = tuple( - odb_network.ListOdbNetworksResponse.to_json(x) for x in response - ) - return_values = tuple(Response() for i in response) - for return_val, response_val in zip(return_values, response): - return_val._content = response_val.encode("UTF-8") - return_val.status_code = 200 - req.side_effect = return_values + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_connection_assignment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/spam") + response = client.delete_goldengate_connection_assignment(request) - sample_request = {"parent": "projects/sample1/locations/sample2"} + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + request = goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest() + assert args[0] == request - pager = client.list_odb_networks(request=sample_request) + # Establish that the response is the type that we expect. + assert isinstance(response, future.Future) - results = list(pager) - assert len(results) == 6 - assert all(isinstance(i, odb_network.OdbNetwork) for i in results) - pages = list(client.list_odb_networks(request=sample_request).pages) - for page_, token in zip(pages, ["abc", "def", "ghi", ""]): - assert page_.raw_page.next_page_token == token +def test_delete_goldengate_connection_assignment_non_empty_request_with_auto_populated_field(): + # This test is a coverage failsafe to make sure that UUID4 fields are + # automatically populated, according to AIP-4235, with non-empty requests. + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Populate all string fields in the request which are not UUID4 + # since we want to check that UUID4 are populated automatically + # if they meet the requirements of AIP 4235. + request = ( + goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest( + name="name_value", + ) + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_connection_assignment), "__call__" + ) as call: + call.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client.delete_goldengate_connection_assignment(request=request) + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest( + name="name_value", + ) + assert args[0] == request_msg -def test_get_odb_network_rest_use_cached_wrapped_rpc(): +def test_delete_goldengate_connection_assignment_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport="grpc", ) # Should wrap all calls on client creation @@ -33095,179 +35524,367 @@ def test_get_odb_network_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert client._transport.get_odb_network in client._transport._wrapped_methods + assert ( + client._transport.delete_goldengate_connection_assignment + in client._transport._wrapped_methods + ) # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.get_odb_network] = mock_rpc - + client._transport._wrapped_methods[ + client._transport.delete_goldengate_connection_assignment + ] = mock_rpc request = {} - client.get_odb_network(request) + client.delete_goldengate_connection_assignment(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.get_odb_network(request) + # Operation methods call wrapper_fn to build a cached + # client._transport.operations_client instance on first rpc call. + # Subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.delete_goldengate_connection_assignment(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_get_odb_network_rest_required_fields( - request_type=odb_network.GetOdbNetworkRequest, +@pytest.mark.asyncio +async def test_delete_goldengate_connection_assignment_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", ): - transport_class = transports.OracleDatabaseRestTransport + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) - request_init = {} - request_init["name"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) - ) + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() - # verify fields with default values are dropped + # Ensure method has been cached + assert ( + client._client._transport.delete_goldengate_connection_assignment + in client._client._transport._wrapped_methods + ) - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).get_odb_network._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + # Replace cached wrapped function with mock + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.delete_goldengate_connection_assignment + ] = mock_rpc - # verify required fields with default values are now present + request = {} + await client.delete_goldengate_connection_assignment(request) - jsonified_request["name"] = "name_value" + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).get_odb_network._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + # Operation methods call wrapper_fn to build a cached + # client._transport.operations_client instance on first rpc call. + # Subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() - # verify required fields with non-default values are left alone - assert "name" in jsonified_request - assert jsonified_request["name"] == "name_value" + await client.delete_goldengate_connection_assignment(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest(), + {}, + ], +) +async def test_delete_goldengate_connection_assignment_async( + request_type, transport: str = "grpc_asyncio" +): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) + + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_connection_assignment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + response = await client.delete_goldengate_connection_assignment(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + request = goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest() + assert args[0] == request + + # Establish that the response is the type that we expect. + assert isinstance(response, future.Future) + +def test_delete_goldengate_connection_assignment_field_headers(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - request = request_type(**request_init) - # Designate an appropriate value for the returned response. - return_value = odb_network.OdbNetwork() - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "get", - "query_params": pb_request, - } - transcode.return_value = transcode_result + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = ( + goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest() + ) - response_value = Response() - response_value.status_code = 200 + request.name = "name_value" - # Convert return value to protobuf type - return_value = odb_network.OdbNetwork.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_connection_assignment), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.delete_goldengate_connection_assignment(request) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert args[0] == request - response = client.get_odb_network(request) + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "name=name_value", + ) in kw["metadata"] - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) +@pytest.mark.asyncio +async def test_delete_goldengate_connection_assignment_field_headers_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) -def test_get_odb_network_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = ( + goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest() ) - unset_fields = transport.get_odb_network._get_unset_required_fields({}) - assert set(unset_fields) == (set(()) & set(("name",))) + request.name = "name_value" + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_connection_assignment), "__call__" + ) as call: + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/op") + ) + await client.delete_goldengate_connection_assignment(request) + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert args[0] == request -def test_get_odb_network_rest_flattened(): + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "name=name_value", + ) in kw["metadata"] + + +def test_delete_goldengate_connection_assignment_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = odb_network.OdbNetwork() + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_connection_assignment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/op") + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + client.delete_goldengate_connection_assignment( + name="name_value", + ) - # get arguments that satisfy an http rule for this method - sample_request = { - "name": "projects/sample1/locations/sample2/odbNetworks/sample3" - } + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + arg = args[0].name + mock_val = "name_value" + assert arg == mock_val - # get truthy value for each flattened field - mock_args = dict( + +def test_delete_goldengate_connection_assignment_flattened_error(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.delete_goldengate_connection_assignment( + goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest(), name="name_value", ) - mock_args.update(sample_request) - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - # Convert return value to protobuf type - return_value = odb_network.OdbNetwork.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_odb_network(**mock_args) +@pytest.mark.asyncio +async def test_delete_goldengate_connection_assignment_flattened_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_connection_assignment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = operations_pb2.Operation(name="operations/op") + + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + response = await client.delete_goldengate_connection_assignment( + name="name_value", + ) # Establish that the underlying call was made with the expected # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{name=projects/*/locations/*/odbNetworks/*}" - % client.transport._host, - args[1], + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + arg = args[0].name + mock_val = "name_value" + assert arg == mock_val + + +@pytest.mark.asyncio +async def test_delete_goldengate_connection_assignment_flattened_error_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + await client.delete_goldengate_connection_assignment( + goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest(), + name="name_value", ) -def test_get_odb_network_rest_flattened_error(transport: str = "rest"): +@pytest.mark.parametrize( + "request_type", + [ + goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest(), + {}, + ], +) +def test_test_goldengate_connection_assignment(request_type, transport: str = "grpc"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, ) - # Attempting to call a method with both a request object and flattened - # fields is an error. - with pytest.raises(ValueError): - client.get_odb_network( - odb_network.GetOdbNetworkRequest(), + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.test_goldengate_connection_assignment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse( + result_type=goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse.ResultType.SUCCEEDED, + ) + response = client.test_goldengate_connection_assignment(request) + + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + request = ( + goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest() + ) + assert args[0] == request + + # Establish that the response is the type that we expect. + assert isinstance( + response, + goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse, + ) + assert ( + response.result_type + == goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse.ResultType.SUCCEEDED + ) + + +def test_test_goldengate_connection_assignment_non_empty_request_with_auto_populated_field(): + # This test is a coverage failsafe to make sure that UUID4 fields are + # automatically populated, according to AIP-4235, with non-empty requests. + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Populate all string fields in the request which are not UUID4 + # since we want to check that UUID4 are populated automatically + # if they meet the requirements of AIP 4235. + request = ( + goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest( name="name_value", ) + ) + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.test_goldengate_connection_assignment), "__call__" + ) as call: + call.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client.test_goldengate_connection_assignment(request=request) + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = ( + goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest( + name="name_value", + ) + ) + assert args[0] == request_msg -def test_create_odb_network_rest_use_cached_wrapped_rpc(): +def test_test_goldengate_connection_assignment_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", + transport="grpc", ) # Should wrap all calls on client creation @@ -33276,7 +35893,8 @@ def test_create_odb_network_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.create_odb_network in client._transport._wrapped_methods + client._transport.test_goldengate_connection_assignment + in client._transport._wrapped_methods ) # Replace cached wrapped function with mock @@ -33284,389 +35902,271 @@ def test_create_odb_network_rest_use_cached_wrapped_rpc(): mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.create_odb_network] = ( - mock_rpc - ) - + client._transport._wrapped_methods[ + client._transport.test_goldengate_connection_assignment + ] = mock_rpc request = {} - client.create_odb_network(request) + client.test_goldengate_connection_assignment(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - # Operation methods build a cached wrapper on first rpc call - # subsequent calls should use the cached wrapper - wrapper_fn.reset_mock() - - client.create_odb_network(request) + client.test_goldengate_connection_assignment(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_create_odb_network_rest_required_fields( - request_type=gco_odb_network.CreateOdbNetworkRequest, +@pytest.mark.asyncio +async def test_test_goldengate_connection_assignment_async_use_cached_wrapped_rpc( + transport: str = "grpc_asyncio", ): - transport_class = transports.OracleDatabaseRestTransport + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method_async.wrap_method") as wrapper_fn: + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, + ) - request_init = {} - request_init["parent"] = "" - request_init["odb_network_id"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) - ) + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() - # verify fields with default values are dropped - assert "odbNetworkId" not in jsonified_request + # Ensure method has been cached + assert ( + client._client._transport.test_goldengate_connection_assignment + in client._client._transport._wrapped_methods + ) - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).create_odb_network._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + # Replace cached wrapped function with mock + mock_rpc = mock.AsyncMock() + mock_rpc.return_value = mock.Mock() + client._client._transport._wrapped_methods[ + client._client._transport.test_goldengate_connection_assignment + ] = mock_rpc - # verify required fields with default values are now present - assert "odbNetworkId" in jsonified_request - assert jsonified_request["odbNetworkId"] == request_init["odb_network_id"] + request = {} + await client.test_goldengate_connection_assignment(request) - jsonified_request["parent"] = "parent_value" - jsonified_request["odbNetworkId"] = "odb_network_id_value" + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).create_odb_network._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "odb_network_id", - "request_id", - ) - ) - jsonified_request.update(unset_fields) + await client.test_goldengate_connection_assignment(request) - # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" - assert "odbNetworkId" in jsonified_request - assert jsonified_request["odbNetworkId"] == "odb_network_id_value" + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", - ) - request = request_type(**request_init) - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "post", - "query_params": pb_request, - } - transcode_result["body"] = pb_request - transcode.return_value = transcode_result - - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) - - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - - response = client.create_odb_network(request) - - expected_params = [ - ( - "odbNetworkId", - "", - ), - ("$alt", "json;enum-encoding=int"), - ] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) - - -def test_create_odb_network_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials +@pytest.mark.asyncio +@pytest.mark.parametrize( + "request_type", + [ + goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest(), + {}, + ], +) +async def test_test_goldengate_connection_assignment_async( + request_type, transport: str = "grpc_asyncio" +): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport=transport, ) - unset_fields = transport.create_odb_network._get_unset_required_fields({}) - assert set(unset_fields) == ( - set( - ( - "odbNetworkId", - "requestId", - ) - ) - & set( - ( - "parent", - "odbNetworkId", - "odbNetwork", + # Everything is optional in proto3 as far as the runtime is concerned, + # and we are mocking out the actual API, so just send an empty request. + request = request_type + + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.test_goldengate_connection_assignment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse( + result_type=goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse.ResultType.SUCCEEDED, ) ) - ) - - -def test_create_odb_network_rest_flattened(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", - ) - - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - - # get arguments that satisfy an http rule for this method - sample_request = {"parent": "projects/sample1/locations/sample2"} + response = await client.test_goldengate_connection_assignment(request) - # get truthy value for each flattened field - mock_args = dict( - parent="parent_value", - odb_network=gco_odb_network.OdbNetwork(name="name_value"), - odb_network_id="odb_network_id_value", + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + request = ( + goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest() ) - mock_args.update(sample_request) - - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - - client.create_odb_network(**mock_args) + assert args[0] == request - # Establish that the underlying call was made with the expected - # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*}/odbNetworks" - % client.transport._host, - args[1], - ) + # Establish that the response is the type that we expect. + assert isinstance( + response, + goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse, + ) + assert ( + response.result_type + == goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse.ResultType.SUCCEEDED + ) -def test_create_odb_network_rest_flattened_error(transport: str = "rest"): +def test_test_goldengate_connection_assignment_field_headers(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport=transport, ) - # Attempting to call a method with both a request object and flattened - # fields is an error. - with pytest.raises(ValueError): - client.create_odb_network( - gco_odb_network.CreateOdbNetworkRequest(), - parent="parent_value", - odb_network=gco_odb_network.OdbNetwork(name="name_value"), - odb_network_id="odb_network_id_value", - ) - - -def test_delete_odb_network_rest_use_cached_wrapped_rpc(): - # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, - # instead of constructing them on each call - with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", - ) - - # Should wrap all calls on client creation - assert wrapper_fn.call_count > 0 - wrapper_fn.reset_mock() - - # Ensure method has been cached - assert ( - client._transport.delete_odb_network in client._transport._wrapped_methods - ) + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = ( + goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest() + ) - # Replace cached wrapped function with mock - mock_rpc = mock.Mock() - mock_rpc.return_value.name = ( - "foo" # operation_request.operation in compute client(s) expect a string. - ) - client._transport._wrapped_methods[client._transport.delete_odb_network] = ( - mock_rpc - ) + request.name = "name_value" - request = {} - client.delete_odb_network(request) + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.test_goldengate_connection_assignment), "__call__" + ) as call: + call.return_value = goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse() + client.test_goldengate_connection_assignment(request) # Establish that the underlying gRPC stub method was called. - assert mock_rpc.call_count == 1 - - # Operation methods build a cached wrapper on first rpc call - # subsequent calls should use the cached wrapper - wrapper_fn.reset_mock() - - client.delete_odb_network(request) - - # Establish that a new wrapper was not created for this call - assert wrapper_fn.call_count == 0 - assert mock_rpc.call_count == 2 + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + assert args[0] == request + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "name=name_value", + ) in kw["metadata"] -def test_delete_odb_network_rest_required_fields( - request_type=odb_network.DeleteOdbNetworkRequest, -): - transport_class = transports.OracleDatabaseRestTransport - request_init = {} - request_init["name"] = "" - request = request_type(**request_init) - pb_request = request_type.pb(request) - jsonified_request = json.loads( - json_format.MessageToJson(pb_request, use_integers_for_enums=False) +@pytest.mark.asyncio +async def test_test_goldengate_connection_assignment_field_headers_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - # verify fields with default values are dropped + # Any value that is part of the HTTP/1.1 URI should be sent as + # a field header. Set these to a non-empty value. + request = ( + goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest() + ) - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).delete_odb_network._get_unset_required_fields(jsonified_request) - jsonified_request.update(unset_fields) + request.name = "name_value" - # verify required fields with default values are now present + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.test_goldengate_connection_assignment), "__call__" + ) as call: + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse() + ) + await client.test_goldengate_connection_assignment(request) - jsonified_request["name"] = "name_value" + # Establish that the underlying gRPC stub method was called. + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + assert args[0] == request - unset_fields = transport_class( - credentials=ga_credentials.AnonymousCredentials() - ).delete_odb_network._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set(("request_id",)) - jsonified_request.update(unset_fields) + # Establish that the field header was sent. + _, _, kw = call.mock_calls[0] + assert ( + "x-goog-request-params", + "name=name_value", + ) in kw["metadata"] - # verify required fields with non-default values are left alone - assert "name" in jsonified_request - assert jsonified_request["name"] == "name_value" +def test_test_goldengate_connection_assignment_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="rest", ) - request = request_type(**request_init) - - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # We need to mock transcode() because providing default values - # for required fields will fail the real version if the http_options - # expect actual values for those fields. - with mock.patch.object(path_template, "transcode") as transcode: - # A uri without fields and an empty body will force all the - # request fields to show up in the query_params. - pb_request = request_type.pb(request) - transcode_result = { - "uri": "v1/sample_method", - "method": "delete", - "query_params": pb_request, - } - transcode.return_value = transcode_result - - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) - - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.delete_odb_network(request) + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.test_goldengate_connection_assignment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse() + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + client.test_goldengate_connection_assignment( + name="name_value", + ) - expected_params = [("$alt", "json;enum-encoding=int")] - actual_params = req.call_args.kwargs["params"] - assert sorted(expected_params) == sorted(actual_params) + # Establish that the underlying call was made with the expected + # request object values. + assert len(call.mock_calls) == 1 + _, args, _ = call.mock_calls[0] + arg = args[0].name + mock_val = "name_value" + assert arg == mock_val -def test_delete_odb_network_rest_unset_required_fields(): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials +def test_test_goldengate_connection_assignment_flattened_error(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), ) - unset_fields = transport.delete_odb_network._get_unset_required_fields({}) - assert set(unset_fields) == (set(("requestId",)) & set(("name",))) + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.test_goldengate_connection_assignment( + goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest(), + name="name_value", + ) -def test_delete_odb_network_rest_flattened(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="rest", +@pytest.mark.asyncio +async def test_test_goldengate_connection_assignment_flattened_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - - # get arguments that satisfy an http rule for this method - sample_request = { - "name": "projects/sample1/locations/sample2/odbNetworks/sample3" - } + # Mock the actual call within the gRPC stub, and fake the request. + with mock.patch.object( + type(client.transport.test_goldengate_connection_assignment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse() - # get truthy value for each flattened field - mock_args = dict( + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse() + ) + # Call the method with a truthy value for each flattened field, + # using the keyword arguments to the method. + response = await client.test_goldengate_connection_assignment( name="name_value", ) - mock_args.update(sample_request) - - # Wrap the value into a proper Response obj - response_value = Response() - response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) - response_value._content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - - client.delete_odb_network(**mock_args) # Establish that the underlying call was made with the expected # request object values. - assert len(req.mock_calls) == 1 - _, args, _ = req.mock_calls[0] - assert path_template.validate( - "%s/v1/{name=projects/*/locations/*/odbNetworks/*}" - % client.transport._host, - args[1], - ) + assert len(call.mock_calls) + _, args, _ = call.mock_calls[0] + arg = args[0].name + mock_val = "name_value" + assert arg == mock_val -def test_delete_odb_network_rest_flattened_error(transport: str = "rest"): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, +@pytest.mark.asyncio +async def test_test_goldengate_connection_assignment_flattened_error_async(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), ) # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.delete_odb_network( - odb_network.DeleteOdbNetworkRequest(), + await client.test_goldengate_connection_assignment( + goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest(), name="name_value", ) -def test_list_odb_subnets_rest_use_cached_wrapped_rpc(): +def test_list_cloud_exadata_infrastructures_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -33680,32 +36180,35 @@ def test_list_odb_subnets_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert client._transport.list_odb_subnets in client._transport._wrapped_methods + assert ( + client._transport.list_cloud_exadata_infrastructures + in client._transport._wrapped_methods + ) # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.list_odb_subnets] = ( - mock_rpc - ) + client._transport._wrapped_methods[ + client._transport.list_cloud_exadata_infrastructures + ] = mock_rpc request = {} - client.list_odb_subnets(request) + client.list_cloud_exadata_infrastructures(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_odb_subnets(request) + client.list_cloud_exadata_infrastructures(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_list_odb_subnets_rest_required_fields( - request_type=odb_subnet.ListOdbSubnetsRequest, +def test_list_cloud_exadata_infrastructures_rest_required_fields( + request_type=oracledatabase.ListCloudExadataInfrastructuresRequest, ): transport_class = transports.OracleDatabaseRestTransport @@ -33721,7 +36224,7 @@ def test_list_odb_subnets_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_odb_subnets._get_unset_required_fields(jsonified_request) + ).list_cloud_exadata_infrastructures._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present @@ -33730,7 +36233,7 @@ def test_list_odb_subnets_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_odb_subnets._get_unset_required_fields(jsonified_request) + ).list_cloud_exadata_infrastructures._get_unset_required_fields(jsonified_request) # Check that path parameters and body parameters are not mixing in. assert not set(unset_fields) - set( ( @@ -33753,7 +36256,7 @@ def test_list_odb_subnets_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = odb_subnet.ListOdbSubnetsResponse() + return_value = oracledatabase.ListCloudExadataInfrastructuresResponse() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -33774,26 +36277,30 @@ def test_list_odb_subnets_rest_required_fields( response_value.status_code = 200 # Convert return value to protobuf type - return_value = odb_subnet.ListOdbSubnetsResponse.pb(return_value) + return_value = oracledatabase.ListCloudExadataInfrastructuresResponse.pb( + return_value + ) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_odb_subnets(request) + response = client.list_cloud_exadata_infrastructures(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_list_odb_subnets_rest_unset_required_fields(): +def test_list_cloud_exadata_infrastructures_rest_unset_required_fields(): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.list_odb_subnets._get_unset_required_fields({}) + unset_fields = ( + transport.list_cloud_exadata_infrastructures._get_unset_required_fields({}) + ) assert set(unset_fields) == ( set( ( @@ -33807,7 +36314,7 @@ def test_list_odb_subnets_rest_unset_required_fields(): ) -def test_list_odb_subnets_rest_flattened(): +def test_list_cloud_exadata_infrastructures_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -33816,12 +36323,10 @@ def test_list_odb_subnets_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = odb_subnet.ListOdbSubnetsResponse() + return_value = oracledatabase.ListCloudExadataInfrastructuresResponse() # get arguments that satisfy an http rule for this method - sample_request = { - "parent": "projects/sample1/locations/sample2/odbNetworks/sample3" - } + sample_request = {"parent": "projects/sample1/locations/sample2"} # get truthy value for each flattened field mock_args = dict( @@ -33833,26 +36338,30 @@ def test_list_odb_subnets_rest_flattened(): response_value = Response() response_value.status_code = 200 # Convert return value to protobuf type - return_value = odb_subnet.ListOdbSubnetsResponse.pb(return_value) + return_value = oracledatabase.ListCloudExadataInfrastructuresResponse.pb( + return_value + ) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_odb_subnets(**mock_args) + client.list_cloud_exadata_infrastructures(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*/odbNetworks/*}/odbSubnets" + "%s/v1/{parent=projects/*/locations/*}/cloudExadataInfrastructures" % client.transport._host, args[1], ) -def test_list_odb_subnets_rest_flattened_error(transport: str = "rest"): +def test_list_cloud_exadata_infrastructures_rest_flattened_error( + transport: str = "rest", +): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -33861,13 +36370,13 @@ def test_list_odb_subnets_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.list_odb_subnets( - odb_subnet.ListOdbSubnetsRequest(), + client.list_cloud_exadata_infrastructures( + oracledatabase.ListCloudExadataInfrastructuresRequest(), parent="parent_value", ) -def test_list_odb_subnets_rest_pager(transport: str = "rest"): +def test_list_cloud_exadata_infrastructures_rest_pager(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -33879,28 +36388,28 @@ def test_list_odb_subnets_rest_pager(transport: str = "rest"): # with mock.patch.object(path_template, 'transcode') as transcode: # Set the response as a series of pages response = ( - odb_subnet.ListOdbSubnetsResponse( - odb_subnets=[ - odb_subnet.OdbSubnet(), - odb_subnet.OdbSubnet(), - odb_subnet.OdbSubnet(), + oracledatabase.ListCloudExadataInfrastructuresResponse( + cloud_exadata_infrastructures=[ + exadata_infra.CloudExadataInfrastructure(), + exadata_infra.CloudExadataInfrastructure(), + exadata_infra.CloudExadataInfrastructure(), ], next_page_token="abc", ), - odb_subnet.ListOdbSubnetsResponse( - odb_subnets=[], + oracledatabase.ListCloudExadataInfrastructuresResponse( + cloud_exadata_infrastructures=[], next_page_token="def", ), - odb_subnet.ListOdbSubnetsResponse( - odb_subnets=[ - odb_subnet.OdbSubnet(), + oracledatabase.ListCloudExadataInfrastructuresResponse( + cloud_exadata_infrastructures=[ + exadata_infra.CloudExadataInfrastructure(), ], next_page_token="ghi", ), - odb_subnet.ListOdbSubnetsResponse( - odb_subnets=[ - odb_subnet.OdbSubnet(), - odb_subnet.OdbSubnet(), + oracledatabase.ListCloudExadataInfrastructuresResponse( + cloud_exadata_infrastructures=[ + exadata_infra.CloudExadataInfrastructure(), + exadata_infra.CloudExadataInfrastructure(), ], ), ) @@ -33908,29 +36417,34 @@ def test_list_odb_subnets_rest_pager(transport: str = "rest"): response = response + response # Wrap the values into proper Response objs - response = tuple(odb_subnet.ListOdbSubnetsResponse.to_json(x) for x in response) + response = tuple( + oracledatabase.ListCloudExadataInfrastructuresResponse.to_json(x) + for x in response + ) return_values = tuple(Response() for i in response) for return_val, response_val in zip(return_values, response): return_val._content = response_val.encode("UTF-8") return_val.status_code = 200 req.side_effect = return_values - sample_request = { - "parent": "projects/sample1/locations/sample2/odbNetworks/sample3" - } + sample_request = {"parent": "projects/sample1/locations/sample2"} - pager = client.list_odb_subnets(request=sample_request) + pager = client.list_cloud_exadata_infrastructures(request=sample_request) results = list(pager) assert len(results) == 6 - assert all(isinstance(i, odb_subnet.OdbSubnet) for i in results) + assert all( + isinstance(i, exadata_infra.CloudExadataInfrastructure) for i in results + ) - pages = list(client.list_odb_subnets(request=sample_request).pages) + pages = list( + client.list_cloud_exadata_infrastructures(request=sample_request).pages + ) for page_, token in zip(pages, ["abc", "def", "ghi", ""]): assert page_.raw_page.next_page_token == token -def test_get_odb_subnet_rest_use_cached_wrapped_rpc(): +def test_get_cloud_exadata_infrastructure_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -33944,30 +36458,35 @@ def test_get_odb_subnet_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert client._transport.get_odb_subnet in client._transport._wrapped_methods + assert ( + client._transport.get_cloud_exadata_infrastructure + in client._transport._wrapped_methods + ) # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.get_odb_subnet] = mock_rpc + client._transport._wrapped_methods[ + client._transport.get_cloud_exadata_infrastructure + ] = mock_rpc request = {} - client.get_odb_subnet(request) + client.get_cloud_exadata_infrastructure(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.get_odb_subnet(request) + client.get_cloud_exadata_infrastructure(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_get_odb_subnet_rest_required_fields( - request_type=odb_subnet.GetOdbSubnetRequest, +def test_get_cloud_exadata_infrastructure_rest_required_fields( + request_type=oracledatabase.GetCloudExadataInfrastructureRequest, ): transport_class = transports.OracleDatabaseRestTransport @@ -33983,7 +36502,7 @@ def test_get_odb_subnet_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).get_odb_subnet._get_unset_required_fields(jsonified_request) + ).get_cloud_exadata_infrastructure._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present @@ -33992,7 +36511,7 @@ def test_get_odb_subnet_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).get_odb_subnet._get_unset_required_fields(jsonified_request) + ).get_cloud_exadata_infrastructure._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone @@ -34006,7 +36525,7 @@ def test_get_odb_subnet_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = odb_subnet.OdbSubnet() + return_value = exadata_infra.CloudExadataInfrastructure() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -34027,30 +36546,32 @@ def test_get_odb_subnet_rest_required_fields( response_value.status_code = 200 # Convert return value to protobuf type - return_value = odb_subnet.OdbSubnet.pb(return_value) + return_value = exadata_infra.CloudExadataInfrastructure.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_odb_subnet(request) + response = client.get_cloud_exadata_infrastructure(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_get_odb_subnet_rest_unset_required_fields(): +def test_get_cloud_exadata_infrastructure_rest_unset_required_fields(): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.get_odb_subnet._get_unset_required_fields({}) + unset_fields = ( + transport.get_cloud_exadata_infrastructure._get_unset_required_fields({}) + ) assert set(unset_fields) == (set(()) & set(("name",))) -def test_get_odb_subnet_rest_flattened(): +def test_get_cloud_exadata_infrastructure_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -34059,11 +36580,11 @@ def test_get_odb_subnet_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = odb_subnet.OdbSubnet() + return_value = exadata_infra.CloudExadataInfrastructure() # get arguments that satisfy an http rule for this method sample_request = { - "name": "projects/sample1/locations/sample2/odbNetworks/sample3/odbSubnets/sample4" + "name": "projects/sample1/locations/sample2/cloudExadataInfrastructures/sample3" } # get truthy value for each flattened field @@ -34076,26 +36597,26 @@ def test_get_odb_subnet_rest_flattened(): response_value = Response() response_value.status_code = 200 # Convert return value to protobuf type - return_value = odb_subnet.OdbSubnet.pb(return_value) + return_value = exadata_infra.CloudExadataInfrastructure.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_odb_subnet(**mock_args) + client.get_cloud_exadata_infrastructure(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1/{name=projects/*/locations/*/odbNetworks/*/odbSubnets/*}" + "%s/v1/{name=projects/*/locations/*/cloudExadataInfrastructures/*}" % client.transport._host, args[1], ) -def test_get_odb_subnet_rest_flattened_error(transport: str = "rest"): +def test_get_cloud_exadata_infrastructure_rest_flattened_error(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -34104,13 +36625,13 @@ def test_get_odb_subnet_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.get_odb_subnet( - odb_subnet.GetOdbSubnetRequest(), + client.get_cloud_exadata_infrastructure( + oracledatabase.GetCloudExadataInfrastructureRequest(), name="name_value", ) -def test_create_odb_subnet_rest_use_cached_wrapped_rpc(): +def test_create_cloud_exadata_infrastructure_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -34124,19 +36645,22 @@ def test_create_odb_subnet_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert client._transport.create_odb_subnet in client._transport._wrapped_methods + assert ( + client._transport.create_cloud_exadata_infrastructure + in client._transport._wrapped_methods + ) # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.create_odb_subnet] = ( - mock_rpc - ) + client._transport._wrapped_methods[ + client._transport.create_cloud_exadata_infrastructure + ] = mock_rpc request = {} - client.create_odb_subnet(request) + client.create_cloud_exadata_infrastructure(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 @@ -34145,21 +36669,21 @@ def test_create_odb_subnet_rest_use_cached_wrapped_rpc(): # subsequent calls should use the cached wrapper wrapper_fn.reset_mock() - client.create_odb_subnet(request) + client.create_cloud_exadata_infrastructure(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_create_odb_subnet_rest_required_fields( - request_type=gco_odb_subnet.CreateOdbSubnetRequest, +def test_create_cloud_exadata_infrastructure_rest_required_fields( + request_type=oracledatabase.CreateCloudExadataInfrastructureRequest, ): transport_class = transports.OracleDatabaseRestTransport request_init = {} request_init["parent"] = "" - request_init["odb_subnet_id"] = "" + request_init["cloud_exadata_infrastructure_id"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -34167,27 +36691,32 @@ def test_create_odb_subnet_rest_required_fields( ) # verify fields with default values are dropped - assert "odbSubnetId" not in jsonified_request + assert "cloudExadataInfrastructureId" not in jsonified_request unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).create_odb_subnet._get_unset_required_fields(jsonified_request) + ).create_cloud_exadata_infrastructure._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present - assert "odbSubnetId" in jsonified_request - assert jsonified_request["odbSubnetId"] == request_init["odb_subnet_id"] + assert "cloudExadataInfrastructureId" in jsonified_request + assert ( + jsonified_request["cloudExadataInfrastructureId"] + == request_init["cloud_exadata_infrastructure_id"] + ) jsonified_request["parent"] = "parent_value" - jsonified_request["odbSubnetId"] = "odb_subnet_id_value" + jsonified_request["cloudExadataInfrastructureId"] = ( + "cloud_exadata_infrastructure_id_value" + ) unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).create_odb_subnet._get_unset_required_fields(jsonified_request) + ).create_cloud_exadata_infrastructure._get_unset_required_fields(jsonified_request) # Check that path parameters and body parameters are not mixing in. assert not set(unset_fields) - set( ( - "odb_subnet_id", + "cloud_exadata_infrastructure_id", "request_id", ) ) @@ -34196,8 +36725,11 @@ def test_create_odb_subnet_rest_required_fields( # verify required fields with non-default values are left alone assert "parent" in jsonified_request assert jsonified_request["parent"] == "parent_value" - assert "odbSubnetId" in jsonified_request - assert jsonified_request["odbSubnetId"] == "odb_subnet_id_value" + assert "cloudExadataInfrastructureId" in jsonified_request + assert ( + jsonified_request["cloudExadataInfrastructureId"] + == "cloud_exadata_infrastructure_id_value" + ) client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), @@ -34232,11 +36764,11 @@ def test_create_odb_subnet_rest_required_fields( req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.create_odb_subnet(request) + response = client.create_cloud_exadata_infrastructure(request) expected_params = [ ( - "odbSubnetId", + "cloudExadataInfrastructureId", "", ), ("$alt", "json;enum-encoding=int"), @@ -34245,30 +36777,32 @@ def test_create_odb_subnet_rest_required_fields( assert sorted(expected_params) == sorted(actual_params) -def test_create_odb_subnet_rest_unset_required_fields(): +def test_create_cloud_exadata_infrastructure_rest_unset_required_fields(): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.create_odb_subnet._get_unset_required_fields({}) + unset_fields = ( + transport.create_cloud_exadata_infrastructure._get_unset_required_fields({}) + ) assert set(unset_fields) == ( set( ( - "odbSubnetId", + "cloudExadataInfrastructureId", "requestId", ) ) & set( ( "parent", - "odbSubnetId", - "odbSubnet", + "cloudExadataInfrastructureId", + "cloudExadataInfrastructure", ) ) ) -def test_create_odb_subnet_rest_flattened(): +def test_create_cloud_exadata_infrastructure_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -34280,15 +36814,15 @@ def test_create_odb_subnet_rest_flattened(): return_value = operations_pb2.Operation(name="operations/spam") # get arguments that satisfy an http rule for this method - sample_request = { - "parent": "projects/sample1/locations/sample2/odbNetworks/sample3" - } + sample_request = {"parent": "projects/sample1/locations/sample2"} # get truthy value for each flattened field mock_args = dict( parent="parent_value", - odb_subnet=gco_odb_subnet.OdbSubnet(name="name_value"), - odb_subnet_id="odb_subnet_id_value", + cloud_exadata_infrastructure=exadata_infra.CloudExadataInfrastructure( + name="name_value" + ), + cloud_exadata_infrastructure_id="cloud_exadata_infrastructure_id_value", ) mock_args.update(sample_request) @@ -34300,20 +36834,22 @@ def test_create_odb_subnet_rest_flattened(): req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.create_odb_subnet(**mock_args) + client.create_cloud_exadata_infrastructure(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*/odbNetworks/*}/odbSubnets" + "%s/v1/{parent=projects/*/locations/*}/cloudExadataInfrastructures" % client.transport._host, args[1], ) -def test_create_odb_subnet_rest_flattened_error(transport: str = "rest"): +def test_create_cloud_exadata_infrastructure_rest_flattened_error( + transport: str = "rest", +): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -34322,15 +36858,17 @@ def test_create_odb_subnet_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.create_odb_subnet( - gco_odb_subnet.CreateOdbSubnetRequest(), + client.create_cloud_exadata_infrastructure( + oracledatabase.CreateCloudExadataInfrastructureRequest(), parent="parent_value", - odb_subnet=gco_odb_subnet.OdbSubnet(name="name_value"), - odb_subnet_id="odb_subnet_id_value", + cloud_exadata_infrastructure=exadata_infra.CloudExadataInfrastructure( + name="name_value" + ), + cloud_exadata_infrastructure_id="cloud_exadata_infrastructure_id_value", ) -def test_delete_odb_subnet_rest_use_cached_wrapped_rpc(): +def test_delete_cloud_exadata_infrastructure_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -34344,19 +36882,22 @@ def test_delete_odb_subnet_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert client._transport.delete_odb_subnet in client._transport._wrapped_methods + assert ( + client._transport.delete_cloud_exadata_infrastructure + in client._transport._wrapped_methods + ) # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.delete_odb_subnet] = ( - mock_rpc - ) + client._transport._wrapped_methods[ + client._transport.delete_cloud_exadata_infrastructure + ] = mock_rpc request = {} - client.delete_odb_subnet(request) + client.delete_cloud_exadata_infrastructure(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 @@ -34365,15 +36906,15 @@ def test_delete_odb_subnet_rest_use_cached_wrapped_rpc(): # subsequent calls should use the cached wrapper wrapper_fn.reset_mock() - client.delete_odb_subnet(request) + client.delete_cloud_exadata_infrastructure(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_delete_odb_subnet_rest_required_fields( - request_type=odb_subnet.DeleteOdbSubnetRequest, +def test_delete_cloud_exadata_infrastructure_rest_required_fields( + request_type=oracledatabase.DeleteCloudExadataInfrastructureRequest, ): transport_class = transports.OracleDatabaseRestTransport @@ -34389,7 +36930,7 @@ def test_delete_odb_subnet_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).delete_odb_subnet._get_unset_required_fields(jsonified_request) + ).delete_cloud_exadata_infrastructure._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present @@ -34398,9 +36939,14 @@ def test_delete_odb_subnet_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).delete_odb_subnet._get_unset_required_fields(jsonified_request) + ).delete_cloud_exadata_infrastructure._get_unset_required_fields(jsonified_request) # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set(("request_id",)) + assert not set(unset_fields) - set( + ( + "force", + "request_id", + ) + ) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone @@ -34439,23 +36985,33 @@ def test_delete_odb_subnet_rest_required_fields( req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.delete_odb_subnet(request) + response = client.delete_cloud_exadata_infrastructure(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_delete_odb_subnet_rest_unset_required_fields(): +def test_delete_cloud_exadata_infrastructure_rest_unset_required_fields(): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.delete_odb_subnet._get_unset_required_fields({}) - assert set(unset_fields) == (set(("requestId",)) & set(("name",))) + unset_fields = ( + transport.delete_cloud_exadata_infrastructure._get_unset_required_fields({}) + ) + assert set(unset_fields) == ( + set( + ( + "force", + "requestId", + ) + ) + & set(("name",)) + ) -def test_delete_odb_subnet_rest_flattened(): +def test_delete_cloud_exadata_infrastructure_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -34468,7 +37024,7 @@ def test_delete_odb_subnet_rest_flattened(): # get arguments that satisfy an http rule for this method sample_request = { - "name": "projects/sample1/locations/sample2/odbNetworks/sample3/odbSubnets/sample4" + "name": "projects/sample1/locations/sample2/cloudExadataInfrastructures/sample3" } # get truthy value for each flattened field @@ -34485,20 +37041,22 @@ def test_delete_odb_subnet_rest_flattened(): req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.delete_odb_subnet(**mock_args) + client.delete_cloud_exadata_infrastructure(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1/{name=projects/*/locations/*/odbNetworks/*/odbSubnets/*}" + "%s/v1/{name=projects/*/locations/*/cloudExadataInfrastructures/*}" % client.transport._host, args[1], ) -def test_delete_odb_subnet_rest_flattened_error(transport: str = "rest"): +def test_delete_cloud_exadata_infrastructure_rest_flattened_error( + transport: str = "rest", +): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -34507,13 +37065,13 @@ def test_delete_odb_subnet_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.delete_odb_subnet( - odb_subnet.DeleteOdbSubnetRequest(), + client.delete_cloud_exadata_infrastructure( + oracledatabase.DeleteCloudExadataInfrastructureRequest(), name="name_value", ) -def test_list_exadb_vm_clusters_rest_use_cached_wrapped_rpc(): +def test_list_cloud_vm_clusters_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -34528,7 +37086,7 @@ def test_list_exadb_vm_clusters_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.list_exadb_vm_clusters + client._transport.list_cloud_vm_clusters in client._transport._wrapped_methods ) @@ -34537,25 +37095,25 @@ def test_list_exadb_vm_clusters_rest_use_cached_wrapped_rpc(): mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.list_exadb_vm_clusters] = ( + client._transport._wrapped_methods[client._transport.list_cloud_vm_clusters] = ( mock_rpc ) request = {} - client.list_exadb_vm_clusters(request) + client.list_cloud_vm_clusters(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_exadb_vm_clusters(request) + client.list_cloud_vm_clusters(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_list_exadb_vm_clusters_rest_required_fields( - request_type=oracledatabase.ListExadbVmClustersRequest, +def test_list_cloud_vm_clusters_rest_required_fields( + request_type=oracledatabase.ListCloudVmClustersRequest, ): transport_class = transports.OracleDatabaseRestTransport @@ -34571,7 +37129,7 @@ def test_list_exadb_vm_clusters_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_exadb_vm_clusters._get_unset_required_fields(jsonified_request) + ).list_cloud_vm_clusters._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present @@ -34580,12 +37138,11 @@ def test_list_exadb_vm_clusters_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_exadb_vm_clusters._get_unset_required_fields(jsonified_request) + ).list_cloud_vm_clusters._get_unset_required_fields(jsonified_request) # Check that path parameters and body parameters are not mixing in. assert not set(unset_fields) - set( ( "filter", - "order_by", "page_size", "page_token", ) @@ -34603,7 +37160,7 @@ def test_list_exadb_vm_clusters_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListExadbVmClustersResponse() + return_value = oracledatabase.ListCloudVmClustersResponse() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -34624,31 +37181,30 @@ def test_list_exadb_vm_clusters_rest_required_fields( response_value.status_code = 200 # Convert return value to protobuf type - return_value = oracledatabase.ListExadbVmClustersResponse.pb(return_value) + return_value = oracledatabase.ListCloudVmClustersResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_exadb_vm_clusters(request) + response = client.list_cloud_vm_clusters(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_list_exadb_vm_clusters_rest_unset_required_fields(): +def test_list_cloud_vm_clusters_rest_unset_required_fields(): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.list_exadb_vm_clusters._get_unset_required_fields({}) + unset_fields = transport.list_cloud_vm_clusters._get_unset_required_fields({}) assert set(unset_fields) == ( set( ( "filter", - "orderBy", "pageSize", "pageToken", ) @@ -34657,7 +37213,7 @@ def test_list_exadb_vm_clusters_rest_unset_required_fields(): ) -def test_list_exadb_vm_clusters_rest_flattened(): +def test_list_cloud_vm_clusters_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -34666,7 +37222,7 @@ def test_list_exadb_vm_clusters_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListExadbVmClustersResponse() + return_value = oracledatabase.ListCloudVmClustersResponse() # get arguments that satisfy an http rule for this method sample_request = {"parent": "projects/sample1/locations/sample2"} @@ -34681,26 +37237,26 @@ def test_list_exadb_vm_clusters_rest_flattened(): response_value = Response() response_value.status_code = 200 # Convert return value to protobuf type - return_value = oracledatabase.ListExadbVmClustersResponse.pb(return_value) + return_value = oracledatabase.ListCloudVmClustersResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_exadb_vm_clusters(**mock_args) + client.list_cloud_vm_clusters(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*}/exadbVmClusters" + "%s/v1/{parent=projects/*/locations/*}/cloudVmClusters" % client.transport._host, args[1], ) -def test_list_exadb_vm_clusters_rest_flattened_error(transport: str = "rest"): +def test_list_cloud_vm_clusters_rest_flattened_error(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -34709,13 +37265,13 @@ def test_list_exadb_vm_clusters_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.list_exadb_vm_clusters( - oracledatabase.ListExadbVmClustersRequest(), + client.list_cloud_vm_clusters( + oracledatabase.ListCloudVmClustersRequest(), parent="parent_value", ) -def test_list_exadb_vm_clusters_rest_pager(transport: str = "rest"): +def test_list_cloud_vm_clusters_rest_pager(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -34727,28 +37283,28 @@ def test_list_exadb_vm_clusters_rest_pager(transport: str = "rest"): # with mock.patch.object(path_template, 'transcode') as transcode: # Set the response as a series of pages response = ( - oracledatabase.ListExadbVmClustersResponse( - exadb_vm_clusters=[ - exadb_vm_cluster.ExadbVmCluster(), - exadb_vm_cluster.ExadbVmCluster(), - exadb_vm_cluster.ExadbVmCluster(), + oracledatabase.ListCloudVmClustersResponse( + cloud_vm_clusters=[ + vm_cluster.CloudVmCluster(), + vm_cluster.CloudVmCluster(), + vm_cluster.CloudVmCluster(), ], next_page_token="abc", ), - oracledatabase.ListExadbVmClustersResponse( - exadb_vm_clusters=[], + oracledatabase.ListCloudVmClustersResponse( + cloud_vm_clusters=[], next_page_token="def", ), - oracledatabase.ListExadbVmClustersResponse( - exadb_vm_clusters=[ - exadb_vm_cluster.ExadbVmCluster(), + oracledatabase.ListCloudVmClustersResponse( + cloud_vm_clusters=[ + vm_cluster.CloudVmCluster(), ], next_page_token="ghi", ), - oracledatabase.ListExadbVmClustersResponse( - exadb_vm_clusters=[ - exadb_vm_cluster.ExadbVmCluster(), - exadb_vm_cluster.ExadbVmCluster(), + oracledatabase.ListCloudVmClustersResponse( + cloud_vm_clusters=[ + vm_cluster.CloudVmCluster(), + vm_cluster.CloudVmCluster(), ], ), ) @@ -34757,7 +37313,7 @@ def test_list_exadb_vm_clusters_rest_pager(transport: str = "rest"): # Wrap the values into proper Response objs response = tuple( - oracledatabase.ListExadbVmClustersResponse.to_json(x) for x in response + oracledatabase.ListCloudVmClustersResponse.to_json(x) for x in response ) return_values = tuple(Response() for i in response) for return_val, response_val in zip(return_values, response): @@ -34767,18 +37323,18 @@ def test_list_exadb_vm_clusters_rest_pager(transport: str = "rest"): sample_request = {"parent": "projects/sample1/locations/sample2"} - pager = client.list_exadb_vm_clusters(request=sample_request) + pager = client.list_cloud_vm_clusters(request=sample_request) results = list(pager) assert len(results) == 6 - assert all(isinstance(i, exadb_vm_cluster.ExadbVmCluster) for i in results) + assert all(isinstance(i, vm_cluster.CloudVmCluster) for i in results) - pages = list(client.list_exadb_vm_clusters(request=sample_request).pages) + pages = list(client.list_cloud_vm_clusters(request=sample_request).pages) for page_, token in zip(pages, ["abc", "def", "ghi", ""]): assert page_.raw_page.next_page_token == token -def test_get_exadb_vm_cluster_rest_use_cached_wrapped_rpc(): +def test_get_cloud_vm_cluster_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -34793,7 +37349,7 @@ def test_get_exadb_vm_cluster_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.get_exadb_vm_cluster in client._transport._wrapped_methods + client._transport.get_cloud_vm_cluster in client._transport._wrapped_methods ) # Replace cached wrapped function with mock @@ -34801,25 +37357,25 @@ def test_get_exadb_vm_cluster_rest_use_cached_wrapped_rpc(): mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.get_exadb_vm_cluster] = ( + client._transport._wrapped_methods[client._transport.get_cloud_vm_cluster] = ( mock_rpc ) request = {} - client.get_exadb_vm_cluster(request) + client.get_cloud_vm_cluster(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.get_exadb_vm_cluster(request) + client.get_cloud_vm_cluster(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_get_exadb_vm_cluster_rest_required_fields( - request_type=oracledatabase.GetExadbVmClusterRequest, +def test_get_cloud_vm_cluster_rest_required_fields( + request_type=oracledatabase.GetCloudVmClusterRequest, ): transport_class = transports.OracleDatabaseRestTransport @@ -34835,7 +37391,7 @@ def test_get_exadb_vm_cluster_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).get_exadb_vm_cluster._get_unset_required_fields(jsonified_request) + ).get_cloud_vm_cluster._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present @@ -34844,7 +37400,7 @@ def test_get_exadb_vm_cluster_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).get_exadb_vm_cluster._get_unset_required_fields(jsonified_request) + ).get_cloud_vm_cluster._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone @@ -34858,7 +37414,7 @@ def test_get_exadb_vm_cluster_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = exadb_vm_cluster.ExadbVmCluster() + return_value = vm_cluster.CloudVmCluster() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -34879,30 +37435,30 @@ def test_get_exadb_vm_cluster_rest_required_fields( response_value.status_code = 200 # Convert return value to protobuf type - return_value = exadb_vm_cluster.ExadbVmCluster.pb(return_value) + return_value = vm_cluster.CloudVmCluster.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_exadb_vm_cluster(request) + response = client.get_cloud_vm_cluster(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_get_exadb_vm_cluster_rest_unset_required_fields(): +def test_get_cloud_vm_cluster_rest_unset_required_fields(): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.get_exadb_vm_cluster._get_unset_required_fields({}) + unset_fields = transport.get_cloud_vm_cluster._get_unset_required_fields({}) assert set(unset_fields) == (set(()) & set(("name",))) -def test_get_exadb_vm_cluster_rest_flattened(): +def test_get_cloud_vm_cluster_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -34911,11 +37467,11 @@ def test_get_exadb_vm_cluster_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = exadb_vm_cluster.ExadbVmCluster() + return_value = vm_cluster.CloudVmCluster() # get arguments that satisfy an http rule for this method sample_request = { - "name": "projects/sample1/locations/sample2/exadbVmClusters/sample3" + "name": "projects/sample1/locations/sample2/cloudVmClusters/sample3" } # get truthy value for each flattened field @@ -34928,26 +37484,26 @@ def test_get_exadb_vm_cluster_rest_flattened(): response_value = Response() response_value.status_code = 200 # Convert return value to protobuf type - return_value = exadb_vm_cluster.ExadbVmCluster.pb(return_value) + return_value = vm_cluster.CloudVmCluster.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_exadb_vm_cluster(**mock_args) + client.get_cloud_vm_cluster(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1/{name=projects/*/locations/*/exadbVmClusters/*}" + "%s/v1/{name=projects/*/locations/*/cloudVmClusters/*}" % client.transport._host, args[1], ) -def test_get_exadb_vm_cluster_rest_flattened_error(transport: str = "rest"): +def test_get_cloud_vm_cluster_rest_flattened_error(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -34956,13 +37512,13 @@ def test_get_exadb_vm_cluster_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.get_exadb_vm_cluster( - oracledatabase.GetExadbVmClusterRequest(), + client.get_cloud_vm_cluster( + oracledatabase.GetCloudVmClusterRequest(), name="name_value", ) -def test_create_exadb_vm_cluster_rest_use_cached_wrapped_rpc(): +def test_create_cloud_vm_cluster_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -34977,7 +37533,7 @@ def test_create_exadb_vm_cluster_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.create_exadb_vm_cluster + client._transport.create_cloud_vm_cluster in client._transport._wrapped_methods ) @@ -34987,11 +37543,11 @@ def test_create_exadb_vm_cluster_rest_use_cached_wrapped_rpc(): "foo" # operation_request.operation in compute client(s) expect a string. ) client._transport._wrapped_methods[ - client._transport.create_exadb_vm_cluster + client._transport.create_cloud_vm_cluster ] = mock_rpc request = {} - client.create_exadb_vm_cluster(request) + client.create_cloud_vm_cluster(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 @@ -35000,21 +37556,21 @@ def test_create_exadb_vm_cluster_rest_use_cached_wrapped_rpc(): # subsequent calls should use the cached wrapper wrapper_fn.reset_mock() - client.create_exadb_vm_cluster(request) + client.create_cloud_vm_cluster(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_create_exadb_vm_cluster_rest_required_fields( - request_type=oracledatabase.CreateExadbVmClusterRequest, +def test_create_cloud_vm_cluster_rest_required_fields( + request_type=oracledatabase.CreateCloudVmClusterRequest, ): transport_class = transports.OracleDatabaseRestTransport request_init = {} request_init["parent"] = "" - request_init["exadb_vm_cluster_id"] = "" + request_init["cloud_vm_cluster_id"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -35022,27 +37578,27 @@ def test_create_exadb_vm_cluster_rest_required_fields( ) # verify fields with default values are dropped - assert "exadbVmClusterId" not in jsonified_request + assert "cloudVmClusterId" not in jsonified_request unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).create_exadb_vm_cluster._get_unset_required_fields(jsonified_request) + ).create_cloud_vm_cluster._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present - assert "exadbVmClusterId" in jsonified_request - assert jsonified_request["exadbVmClusterId"] == request_init["exadb_vm_cluster_id"] + assert "cloudVmClusterId" in jsonified_request + assert jsonified_request["cloudVmClusterId"] == request_init["cloud_vm_cluster_id"] jsonified_request["parent"] = "parent_value" - jsonified_request["exadbVmClusterId"] = "exadb_vm_cluster_id_value" + jsonified_request["cloudVmClusterId"] = "cloud_vm_cluster_id_value" unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).create_exadb_vm_cluster._get_unset_required_fields(jsonified_request) + ).create_cloud_vm_cluster._get_unset_required_fields(jsonified_request) # Check that path parameters and body parameters are not mixing in. assert not set(unset_fields) - set( ( - "exadb_vm_cluster_id", + "cloud_vm_cluster_id", "request_id", ) ) @@ -35051,8 +37607,8 @@ def test_create_exadb_vm_cluster_rest_required_fields( # verify required fields with non-default values are left alone assert "parent" in jsonified_request assert jsonified_request["parent"] == "parent_value" - assert "exadbVmClusterId" in jsonified_request - assert jsonified_request["exadbVmClusterId"] == "exadb_vm_cluster_id_value" + assert "cloudVmClusterId" in jsonified_request + assert jsonified_request["cloudVmClusterId"] == "cloud_vm_cluster_id_value" client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), @@ -35087,11 +37643,11 @@ def test_create_exadb_vm_cluster_rest_required_fields( req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.create_exadb_vm_cluster(request) + response = client.create_cloud_vm_cluster(request) expected_params = [ ( - "exadbVmClusterId", + "cloudVmClusterId", "", ), ("$alt", "json;enum-encoding=int"), @@ -35100,30 +37656,30 @@ def test_create_exadb_vm_cluster_rest_required_fields( assert sorted(expected_params) == sorted(actual_params) -def test_create_exadb_vm_cluster_rest_unset_required_fields(): +def test_create_cloud_vm_cluster_rest_unset_required_fields(): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.create_exadb_vm_cluster._get_unset_required_fields({}) + unset_fields = transport.create_cloud_vm_cluster._get_unset_required_fields({}) assert set(unset_fields) == ( set( ( - "exadbVmClusterId", + "cloudVmClusterId", "requestId", ) ) & set( ( "parent", - "exadbVmClusterId", - "exadbVmCluster", + "cloudVmClusterId", + "cloudVmCluster", ) ) ) -def test_create_exadb_vm_cluster_rest_flattened(): +def test_create_cloud_vm_cluster_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -35140,8 +37696,8 @@ def test_create_exadb_vm_cluster_rest_flattened(): # get truthy value for each flattened field mock_args = dict( parent="parent_value", - exadb_vm_cluster=gco_exadb_vm_cluster.ExadbVmCluster(name="name_value"), - exadb_vm_cluster_id="exadb_vm_cluster_id_value", + cloud_vm_cluster=vm_cluster.CloudVmCluster(name="name_value"), + cloud_vm_cluster_id="cloud_vm_cluster_id_value", ) mock_args.update(sample_request) @@ -35153,20 +37709,20 @@ def test_create_exadb_vm_cluster_rest_flattened(): req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.create_exadb_vm_cluster(**mock_args) + client.create_cloud_vm_cluster(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*}/exadbVmClusters" + "%s/v1/{parent=projects/*/locations/*}/cloudVmClusters" % client.transport._host, args[1], ) -def test_create_exadb_vm_cluster_rest_flattened_error(transport: str = "rest"): +def test_create_cloud_vm_cluster_rest_flattened_error(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -35175,15 +37731,15 @@ def test_create_exadb_vm_cluster_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.create_exadb_vm_cluster( - oracledatabase.CreateExadbVmClusterRequest(), + client.create_cloud_vm_cluster( + oracledatabase.CreateCloudVmClusterRequest(), parent="parent_value", - exadb_vm_cluster=gco_exadb_vm_cluster.ExadbVmCluster(name="name_value"), - exadb_vm_cluster_id="exadb_vm_cluster_id_value", + cloud_vm_cluster=vm_cluster.CloudVmCluster(name="name_value"), + cloud_vm_cluster_id="cloud_vm_cluster_id_value", ) -def test_delete_exadb_vm_cluster_rest_use_cached_wrapped_rpc(): +def test_delete_cloud_vm_cluster_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -35198,7 +37754,7 @@ def test_delete_exadb_vm_cluster_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.delete_exadb_vm_cluster + client._transport.delete_cloud_vm_cluster in client._transport._wrapped_methods ) @@ -35208,11 +37764,11 @@ def test_delete_exadb_vm_cluster_rest_use_cached_wrapped_rpc(): "foo" # operation_request.operation in compute client(s) expect a string. ) client._transport._wrapped_methods[ - client._transport.delete_exadb_vm_cluster + client._transport.delete_cloud_vm_cluster ] = mock_rpc request = {} - client.delete_exadb_vm_cluster(request) + client.delete_cloud_vm_cluster(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 @@ -35221,15 +37777,15 @@ def test_delete_exadb_vm_cluster_rest_use_cached_wrapped_rpc(): # subsequent calls should use the cached wrapper wrapper_fn.reset_mock() - client.delete_exadb_vm_cluster(request) + client.delete_cloud_vm_cluster(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_delete_exadb_vm_cluster_rest_required_fields( - request_type=oracledatabase.DeleteExadbVmClusterRequest, +def test_delete_cloud_vm_cluster_rest_required_fields( + request_type=oracledatabase.DeleteCloudVmClusterRequest, ): transport_class = transports.OracleDatabaseRestTransport @@ -35245,7 +37801,7 @@ def test_delete_exadb_vm_cluster_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).delete_exadb_vm_cluster._get_unset_required_fields(jsonified_request) + ).delete_cloud_vm_cluster._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present @@ -35254,9 +37810,14 @@ def test_delete_exadb_vm_cluster_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).delete_exadb_vm_cluster._get_unset_required_fields(jsonified_request) + ).delete_cloud_vm_cluster._get_unset_required_fields(jsonified_request) # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set(("request_id",)) + assert not set(unset_fields) - set( + ( + "force", + "request_id", + ) + ) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone @@ -35295,23 +37856,31 @@ def test_delete_exadb_vm_cluster_rest_required_fields( req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.delete_exadb_vm_cluster(request) + response = client.delete_cloud_vm_cluster(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_delete_exadb_vm_cluster_rest_unset_required_fields(): +def test_delete_cloud_vm_cluster_rest_unset_required_fields(): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.delete_exadb_vm_cluster._get_unset_required_fields({}) - assert set(unset_fields) == (set(("requestId",)) & set(("name",))) + unset_fields = transport.delete_cloud_vm_cluster._get_unset_required_fields({}) + assert set(unset_fields) == ( + set( + ( + "force", + "requestId", + ) + ) + & set(("name",)) + ) -def test_delete_exadb_vm_cluster_rest_flattened(): +def test_delete_cloud_vm_cluster_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -35324,7 +37893,7 @@ def test_delete_exadb_vm_cluster_rest_flattened(): # get arguments that satisfy an http rule for this method sample_request = { - "name": "projects/sample1/locations/sample2/exadbVmClusters/sample3" + "name": "projects/sample1/locations/sample2/cloudVmClusters/sample3" } # get truthy value for each flattened field @@ -35341,20 +37910,20 @@ def test_delete_exadb_vm_cluster_rest_flattened(): req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.delete_exadb_vm_cluster(**mock_args) + client.delete_cloud_vm_cluster(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1/{name=projects/*/locations/*/exadbVmClusters/*}" + "%s/v1/{name=projects/*/locations/*/cloudVmClusters/*}" % client.transport._host, args[1], ) -def test_delete_exadb_vm_cluster_rest_flattened_error(transport: str = "rest"): +def test_delete_cloud_vm_cluster_rest_flattened_error(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -35363,13 +37932,13 @@ def test_delete_exadb_vm_cluster_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.delete_exadb_vm_cluster( - oracledatabase.DeleteExadbVmClusterRequest(), + client.delete_cloud_vm_cluster( + oracledatabase.DeleteCloudVmClusterRequest(), name="name_value", ) -def test_update_exadb_vm_cluster_rest_use_cached_wrapped_rpc(): +def test_list_entitlements_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -35383,43 +37952,37 @@ def test_update_exadb_vm_cluster_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert ( - client._transport.update_exadb_vm_cluster - in client._transport._wrapped_methods - ) + assert client._transport.list_entitlements in client._transport._wrapped_methods # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[ - client._transport.update_exadb_vm_cluster - ] = mock_rpc + client._transport._wrapped_methods[client._transport.list_entitlements] = ( + mock_rpc + ) request = {} - client.update_exadb_vm_cluster(request) + client.list_entitlements(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - # Operation methods build a cached wrapper on first rpc call - # subsequent calls should use the cached wrapper - wrapper_fn.reset_mock() - - client.update_exadb_vm_cluster(request) + client.list_entitlements(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_update_exadb_vm_cluster_rest_required_fields( - request_type=oracledatabase.UpdateExadbVmClusterRequest, +def test_list_entitlements_rest_required_fields( + request_type=oracledatabase.ListEntitlementsRequest, ): transport_class = transports.OracleDatabaseRestTransport request_init = {} + request_init["parent"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -35430,24 +37993,28 @@ def test_update_exadb_vm_cluster_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).update_exadb_vm_cluster._get_unset_required_fields(jsonified_request) + ).list_entitlements._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present + jsonified_request["parent"] = "parent_value" + unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).update_exadb_vm_cluster._get_unset_required_fields(jsonified_request) + ).list_entitlements._get_unset_required_fields(jsonified_request) # Check that path parameters and body parameters are not mixing in. assert not set(unset_fields) - set( ( - "request_id", - "update_mask", + "page_size", + "page_token", ) ) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), @@ -35456,7 +38023,7 @@ def test_update_exadb_vm_cluster_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = oracledatabase.ListEntitlementsResponse() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -35468,45 +38035,47 @@ def test_update_exadb_vm_cluster_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "patch", + "method": "get", "query_params": pb_request, } - transcode_result["body"] = pb_request transcode.return_value = transcode_result response_value = Response() response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = oracledatabase.ListEntitlementsResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.update_exadb_vm_cluster(request) + response = client.list_entitlements(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_update_exadb_vm_cluster_rest_unset_required_fields(): +def test_list_entitlements_rest_unset_required_fields(): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.update_exadb_vm_cluster._get_unset_required_fields({}) + unset_fields = transport.list_entitlements._get_unset_required_fields({}) assert set(unset_fields) == ( set( ( - "requestId", - "updateMask", + "pageSize", + "pageToken", ) ) - & set(("exadbVmCluster",)) + & set(("parent",)) ) -def test_update_exadb_vm_cluster_rest_flattened(): +def test_list_entitlements_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -35515,44 +38084,41 @@ def test_update_exadb_vm_cluster_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = oracledatabase.ListEntitlementsResponse() # get arguments that satisfy an http rule for this method - sample_request = { - "exadb_vm_cluster": { - "name": "projects/sample1/locations/sample2/exadbVmClusters/sample3" - } - } + sample_request = {"parent": "projects/sample1/locations/sample2"} # get truthy value for each flattened field mock_args = dict( - exadb_vm_cluster=gco_exadb_vm_cluster.ExadbVmCluster(name="name_value"), - update_mask=field_mask_pb2.FieldMask(paths=["paths_value"]), + parent="parent_value", ) mock_args.update(sample_request) # Wrap the value into a proper Response obj response_value = Response() response_value.status_code = 200 + # Convert return value to protobuf type + return_value = oracledatabase.ListEntitlementsResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.update_exadb_vm_cluster(**mock_args) + client.list_entitlements(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1/{exadb_vm_cluster.name=projects/*/locations/*/exadbVmClusters/*}" + "%s/v1/{parent=projects/*/locations/*}/entitlements" % client.transport._host, args[1], ) -def test_update_exadb_vm_cluster_rest_flattened_error(transport: str = "rest"): +def test_list_entitlements_rest_flattened_error(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -35561,14 +38127,76 @@ def test_update_exadb_vm_cluster_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.update_exadb_vm_cluster( - oracledatabase.UpdateExadbVmClusterRequest(), - exadb_vm_cluster=gco_exadb_vm_cluster.ExadbVmCluster(name="name_value"), - update_mask=field_mask_pb2.FieldMask(paths=["paths_value"]), + client.list_entitlements( + oracledatabase.ListEntitlementsRequest(), + parent="parent_value", ) -def test_remove_virtual_machine_exadb_vm_cluster_rest_use_cached_wrapped_rpc(): +def test_list_entitlements_rest_pager(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + oracledatabase.ListEntitlementsResponse( + entitlements=[ + entitlement.Entitlement(), + entitlement.Entitlement(), + entitlement.Entitlement(), + ], + next_page_token="abc", + ), + oracledatabase.ListEntitlementsResponse( + entitlements=[], + next_page_token="def", + ), + oracledatabase.ListEntitlementsResponse( + entitlements=[ + entitlement.Entitlement(), + ], + next_page_token="ghi", + ), + oracledatabase.ListEntitlementsResponse( + entitlements=[ + entitlement.Entitlement(), + entitlement.Entitlement(), + ], + ), + ) + # Two responses for two calls + response = response + response + + # Wrap the values into proper Response objs + response = tuple( + oracledatabase.ListEntitlementsResponse.to_json(x) for x in response + ) + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values + + sample_request = {"parent": "projects/sample1/locations/sample2"} + + pager = client.list_entitlements(request=sample_request) + + results = list(pager) + assert len(results) == 6 + assert all(isinstance(i, entitlement.Entitlement) for i in results) + + pages = list(client.list_entitlements(request=sample_request).pages) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token + + +def test_list_db_servers_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -35582,45 +38210,35 @@ def test_remove_virtual_machine_exadb_vm_cluster_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert ( - client._transport.remove_virtual_machine_exadb_vm_cluster - in client._transport._wrapped_methods - ) + assert client._transport.list_db_servers in client._transport._wrapped_methods # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[ - client._transport.remove_virtual_machine_exadb_vm_cluster - ] = mock_rpc + client._transport._wrapped_methods[client._transport.list_db_servers] = mock_rpc request = {} - client.remove_virtual_machine_exadb_vm_cluster(request) + client.list_db_servers(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - # Operation methods build a cached wrapper on first rpc call - # subsequent calls should use the cached wrapper - wrapper_fn.reset_mock() - - client.remove_virtual_machine_exadb_vm_cluster(request) + client.list_db_servers(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_remove_virtual_machine_exadb_vm_cluster_rest_required_fields( - request_type=oracledatabase.RemoveVirtualMachineExadbVmClusterRequest, +def test_list_db_servers_rest_required_fields( + request_type=oracledatabase.ListDbServersRequest, ): transport_class = transports.OracleDatabaseRestTransport request_init = {} - request_init["name"] = "" - request_init["hostnames"] = "" + request_init["parent"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -35631,28 +38249,28 @@ def test_remove_virtual_machine_exadb_vm_cluster_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).remove_virtual_machine_exadb_vm_cluster._get_unset_required_fields( - jsonified_request - ) + ).list_db_servers._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present - jsonified_request["name"] = "name_value" - jsonified_request["hostnames"] = "hostnames_value" + jsonified_request["parent"] = "parent_value" unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).remove_virtual_machine_exadb_vm_cluster._get_unset_required_fields( - jsonified_request + ).list_db_servers._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "page_size", + "page_token", + ) ) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone - assert "name" in jsonified_request - assert jsonified_request["name"] == "name_value" - assert "hostnames" in jsonified_request - assert jsonified_request["hostnames"] == "hostnames_value" + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), @@ -35661,7 +38279,7 @@ def test_remove_virtual_machine_exadb_vm_cluster_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = oracledatabase.ListDbServersResponse() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -35673,47 +38291,47 @@ def test_remove_virtual_machine_exadb_vm_cluster_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "post", + "method": "get", "query_params": pb_request, } - transcode_result["body"] = pb_request transcode.return_value = transcode_result response_value = Response() response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = oracledatabase.ListDbServersResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.remove_virtual_machine_exadb_vm_cluster(request) + response = client.list_db_servers(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_remove_virtual_machine_exadb_vm_cluster_rest_unset_required_fields(): +def test_list_db_servers_rest_unset_required_fields(): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = ( - transport.remove_virtual_machine_exadb_vm_cluster._get_unset_required_fields({}) - ) + unset_fields = transport.list_db_servers._get_unset_required_fields({}) assert set(unset_fields) == ( - set(()) - & set( + set( ( - "name", - "hostnames", + "pageSize", + "pageToken", ) ) + & set(("parent",)) ) -def test_remove_virtual_machine_exadb_vm_cluster_rest_flattened(): +def test_list_db_servers_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -35722,44 +38340,43 @@ def test_remove_virtual_machine_exadb_vm_cluster_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = oracledatabase.ListDbServersResponse() # get arguments that satisfy an http rule for this method sample_request = { - "name": "projects/sample1/locations/sample2/exadbVmClusters/sample3" + "parent": "projects/sample1/locations/sample2/cloudExadataInfrastructures/sample3" } # get truthy value for each flattened field mock_args = dict( - name="name_value", - hostnames=["hostnames_value"], + parent="parent_value", ) mock_args.update(sample_request) # Wrap the value into a proper Response obj response_value = Response() response_value.status_code = 200 + # Convert return value to protobuf type + return_value = oracledatabase.ListDbServersResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.remove_virtual_machine_exadb_vm_cluster(**mock_args) + client.list_db_servers(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1/{name=projects/*/locations/*/exadbVmClusters/*}:removeVirtualMachine" + "%s/v1/{parent=projects/*/locations/*/cloudExadataInfrastructures/*}/dbServers" % client.transport._host, args[1], ) -def test_remove_virtual_machine_exadb_vm_cluster_rest_flattened_error( - transport: str = "rest", -): +def test_list_db_servers_rest_flattened_error(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -35768,14 +38385,78 @@ def test_remove_virtual_machine_exadb_vm_cluster_rest_flattened_error( # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.remove_virtual_machine_exadb_vm_cluster( - oracledatabase.RemoveVirtualMachineExadbVmClusterRequest(), - name="name_value", - hostnames=["hostnames_value"], + client.list_db_servers( + oracledatabase.ListDbServersRequest(), + parent="parent_value", ) -def test_list_exascale_db_storage_vaults_rest_use_cached_wrapped_rpc(): +def test_list_db_servers_rest_pager(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + oracledatabase.ListDbServersResponse( + db_servers=[ + db_server.DbServer(), + db_server.DbServer(), + db_server.DbServer(), + ], + next_page_token="abc", + ), + oracledatabase.ListDbServersResponse( + db_servers=[], + next_page_token="def", + ), + oracledatabase.ListDbServersResponse( + db_servers=[ + db_server.DbServer(), + ], + next_page_token="ghi", + ), + oracledatabase.ListDbServersResponse( + db_servers=[ + db_server.DbServer(), + db_server.DbServer(), + ], + ), + ) + # Two responses for two calls + response = response + response + + # Wrap the values into proper Response objs + response = tuple( + oracledatabase.ListDbServersResponse.to_json(x) for x in response + ) + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values + + sample_request = { + "parent": "projects/sample1/locations/sample2/cloudExadataInfrastructures/sample3" + } + + pager = client.list_db_servers(request=sample_request) + + results = list(pager) + assert len(results) == 6 + assert all(isinstance(i, db_server.DbServer) for i in results) + + pages = list(client.list_db_servers(request=sample_request).pages) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token + + +def test_list_db_nodes_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -35789,35 +38470,30 @@ def test_list_exascale_db_storage_vaults_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert ( - client._transport.list_exascale_db_storage_vaults - in client._transport._wrapped_methods - ) + assert client._transport.list_db_nodes in client._transport._wrapped_methods # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[ - client._transport.list_exascale_db_storage_vaults - ] = mock_rpc + client._transport._wrapped_methods[client._transport.list_db_nodes] = mock_rpc request = {} - client.list_exascale_db_storage_vaults(request) + client.list_db_nodes(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_exascale_db_storage_vaults(request) + client.list_db_nodes(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_list_exascale_db_storage_vaults_rest_required_fields( - request_type=exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest, +def test_list_db_nodes_rest_required_fields( + request_type=oracledatabase.ListDbNodesRequest, ): transport_class = transports.OracleDatabaseRestTransport @@ -35833,7 +38509,7 @@ def test_list_exascale_db_storage_vaults_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_exascale_db_storage_vaults._get_unset_required_fields(jsonified_request) + ).list_db_nodes._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present @@ -35842,12 +38518,10 @@ def test_list_exascale_db_storage_vaults_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_exascale_db_storage_vaults._get_unset_required_fields(jsonified_request) + ).list_db_nodes._get_unset_required_fields(jsonified_request) # Check that path parameters and body parameters are not mixing in. assert not set(unset_fields) - set( ( - "filter", - "order_by", "page_size", "page_token", ) @@ -35865,7 +38539,7 @@ def test_list_exascale_db_storage_vaults_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse() + return_value = oracledatabase.ListDbNodesResponse() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -35886,37 +38560,29 @@ def test_list_exascale_db_storage_vaults_rest_required_fields( response_value.status_code = 200 # Convert return value to protobuf type - return_value = ( - exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse.pb( - return_value - ) - ) + return_value = oracledatabase.ListDbNodesResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_exascale_db_storage_vaults(request) + response = client.list_db_nodes(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_list_exascale_db_storage_vaults_rest_unset_required_fields(): +def test_list_db_nodes_rest_unset_required_fields(): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.list_exascale_db_storage_vaults._get_unset_required_fields( - {} - ) + unset_fields = transport.list_db_nodes._get_unset_required_fields({}) assert set(unset_fields) == ( set( ( - "filter", - "orderBy", "pageSize", "pageToken", ) @@ -35925,7 +38591,7 @@ def test_list_exascale_db_storage_vaults_rest_unset_required_fields(): ) -def test_list_exascale_db_storage_vaults_rest_flattened(): +def test_list_db_nodes_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -35934,10 +38600,12 @@ def test_list_exascale_db_storage_vaults_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse() + return_value = oracledatabase.ListDbNodesResponse() # get arguments that satisfy an http rule for this method - sample_request = {"parent": "projects/sample1/locations/sample2"} + sample_request = { + "parent": "projects/sample1/locations/sample2/cloudVmClusters/sample3" + } # get truthy value for each flattened field mock_args = dict( @@ -35949,28 +38617,26 @@ def test_list_exascale_db_storage_vaults_rest_flattened(): response_value = Response() response_value.status_code = 200 # Convert return value to protobuf type - return_value = exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse.pb( - return_value - ) + return_value = oracledatabase.ListDbNodesResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_exascale_db_storage_vaults(**mock_args) + client.list_db_nodes(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*}/exascaleDbStorageVaults" + "%s/v1/{parent=projects/*/locations/*/cloudVmClusters/*}/dbNodes" % client.transport._host, args[1], ) -def test_list_exascale_db_storage_vaults_rest_flattened_error(transport: str = "rest"): +def test_list_db_nodes_rest_flattened_error(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -35979,13 +38645,13 @@ def test_list_exascale_db_storage_vaults_rest_flattened_error(transport: str = " # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.list_exascale_db_storage_vaults( - exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest(), + client.list_db_nodes( + oracledatabase.ListDbNodesRequest(), parent="parent_value", ) -def test_list_exascale_db_storage_vaults_rest_pager(transport: str = "rest"): +def test_list_db_nodes_rest_pager(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -35997,28 +38663,28 @@ def test_list_exascale_db_storage_vaults_rest_pager(transport: str = "rest"): # with mock.patch.object(path_template, 'transcode') as transcode: # Set the response as a series of pages response = ( - exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse( - exascale_db_storage_vaults=[ - exascale_db_storage_vault.ExascaleDbStorageVault(), - exascale_db_storage_vault.ExascaleDbStorageVault(), - exascale_db_storage_vault.ExascaleDbStorageVault(), + oracledatabase.ListDbNodesResponse( + db_nodes=[ + db_node.DbNode(), + db_node.DbNode(), + db_node.DbNode(), ], next_page_token="abc", ), - exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse( - exascale_db_storage_vaults=[], + oracledatabase.ListDbNodesResponse( + db_nodes=[], next_page_token="def", ), - exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse( - exascale_db_storage_vaults=[ - exascale_db_storage_vault.ExascaleDbStorageVault(), + oracledatabase.ListDbNodesResponse( + db_nodes=[ + db_node.DbNode(), ], next_page_token="ghi", ), - exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse( - exascale_db_storage_vaults=[ - exascale_db_storage_vault.ExascaleDbStorageVault(), - exascale_db_storage_vault.ExascaleDbStorageVault(), + oracledatabase.ListDbNodesResponse( + db_nodes=[ + db_node.DbNode(), + db_node.DbNode(), ], ), ) @@ -36027,8 +38693,7 @@ def test_list_exascale_db_storage_vaults_rest_pager(transport: str = "rest"): # Wrap the values into proper Response objs response = tuple( - exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse.to_json(x) - for x in response + oracledatabase.ListDbNodesResponse.to_json(x) for x in response ) return_values = tuple(Response() for i in response) for return_val, response_val in zip(return_values, response): @@ -36036,25 +38701,22 @@ def test_list_exascale_db_storage_vaults_rest_pager(transport: str = "rest"): return_val.status_code = 200 req.side_effect = return_values - sample_request = {"parent": "projects/sample1/locations/sample2"} + sample_request = { + "parent": "projects/sample1/locations/sample2/cloudVmClusters/sample3" + } - pager = client.list_exascale_db_storage_vaults(request=sample_request) + pager = client.list_db_nodes(request=sample_request) results = list(pager) assert len(results) == 6 - assert all( - isinstance(i, exascale_db_storage_vault.ExascaleDbStorageVault) - for i in results - ) + assert all(isinstance(i, db_node.DbNode) for i in results) - pages = list( - client.list_exascale_db_storage_vaults(request=sample_request).pages - ) + pages = list(client.list_db_nodes(request=sample_request).pages) for page_, token in zip(pages, ["abc", "def", "ghi", ""]): assert page_.raw_page.next_page_token == token -def test_get_exascale_db_storage_vault_rest_use_cached_wrapped_rpc(): +def test_list_gi_versions_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -36068,40 +38730,37 @@ def test_get_exascale_db_storage_vault_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert ( - client._transport.get_exascale_db_storage_vault - in client._transport._wrapped_methods - ) + assert client._transport.list_gi_versions in client._transport._wrapped_methods # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[ - client._transport.get_exascale_db_storage_vault - ] = mock_rpc + client._transport._wrapped_methods[client._transport.list_gi_versions] = ( + mock_rpc + ) request = {} - client.get_exascale_db_storage_vault(request) + client.list_gi_versions(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.get_exascale_db_storage_vault(request) + client.list_gi_versions(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_get_exascale_db_storage_vault_rest_required_fields( - request_type=exascale_db_storage_vault.GetExascaleDbStorageVaultRequest, +def test_list_gi_versions_rest_required_fields( + request_type=oracledatabase.ListGiVersionsRequest, ): transport_class = transports.OracleDatabaseRestTransport request_init = {} - request_init["name"] = "" + request_init["parent"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -36112,21 +38771,29 @@ def test_get_exascale_db_storage_vault_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).get_exascale_db_storage_vault._get_unset_required_fields(jsonified_request) + ).list_gi_versions._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present - jsonified_request["name"] = "name_value" + jsonified_request["parent"] = "parent_value" unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).get_exascale_db_storage_vault._get_unset_required_fields(jsonified_request) + ).list_gi_versions._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "filter", + "page_size", + "page_token", + ) + ) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone - assert "name" in jsonified_request - assert jsonified_request["name"] == "name_value" + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), @@ -36135,7 +38802,7 @@ def test_get_exascale_db_storage_vault_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = exascale_db_storage_vault.ExascaleDbStorageVault() + return_value = oracledatabase.ListGiVersionsResponse() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -36156,34 +38823,39 @@ def test_get_exascale_db_storage_vault_rest_required_fields( response_value.status_code = 200 # Convert return value to protobuf type - return_value = exascale_db_storage_vault.ExascaleDbStorageVault.pb( - return_value - ) + return_value = oracledatabase.ListGiVersionsResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_exascale_db_storage_vault(request) + response = client.list_gi_versions(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_get_exascale_db_storage_vault_rest_unset_required_fields(): +def test_list_gi_versions_rest_unset_required_fields(): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.get_exascale_db_storage_vault._get_unset_required_fields( - {} + unset_fields = transport.list_gi_versions._get_unset_required_fields({}) + assert set(unset_fields) == ( + set( + ( + "filter", + "pageSize", + "pageToken", + ) + ) + & set(("parent",)) ) - assert set(unset_fields) == (set(()) & set(("name",))) -def test_get_exascale_db_storage_vault_rest_flattened(): +def test_list_gi_versions_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -36192,16 +38864,14 @@ def test_get_exascale_db_storage_vault_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = exascale_db_storage_vault.ExascaleDbStorageVault() + return_value = oracledatabase.ListGiVersionsResponse() # get arguments that satisfy an http rule for this method - sample_request = { - "name": "projects/sample1/locations/sample2/exascaleDbStorageVaults/sample3" - } + sample_request = {"parent": "projects/sample1/locations/sample2"} # get truthy value for each flattened field mock_args = dict( - name="name_value", + parent="parent_value", ) mock_args.update(sample_request) @@ -36209,26 +38879,25 @@ def test_get_exascale_db_storage_vault_rest_flattened(): response_value = Response() response_value.status_code = 200 # Convert return value to protobuf type - return_value = exascale_db_storage_vault.ExascaleDbStorageVault.pb(return_value) + return_value = oracledatabase.ListGiVersionsResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_exascale_db_storage_vault(**mock_args) + client.list_gi_versions(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1/{name=projects/*/locations/*/exascaleDbStorageVaults/*}" - % client.transport._host, + "%s/v1/{parent=projects/*/locations/*}/giVersions" % client.transport._host, args[1], ) -def test_get_exascale_db_storage_vault_rest_flattened_error(transport: str = "rest"): +def test_list_gi_versions_rest_flattened_error(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -36237,13 +38906,76 @@ def test_get_exascale_db_storage_vault_rest_flattened_error(transport: str = "re # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.get_exascale_db_storage_vault( - exascale_db_storage_vault.GetExascaleDbStorageVaultRequest(), - name="name_value", + client.list_gi_versions( + oracledatabase.ListGiVersionsRequest(), + parent="parent_value", ) -def test_create_exascale_db_storage_vault_rest_use_cached_wrapped_rpc(): +def test_list_gi_versions_rest_pager(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + oracledatabase.ListGiVersionsResponse( + gi_versions=[ + gi_version.GiVersion(), + gi_version.GiVersion(), + gi_version.GiVersion(), + ], + next_page_token="abc", + ), + oracledatabase.ListGiVersionsResponse( + gi_versions=[], + next_page_token="def", + ), + oracledatabase.ListGiVersionsResponse( + gi_versions=[ + gi_version.GiVersion(), + ], + next_page_token="ghi", + ), + oracledatabase.ListGiVersionsResponse( + gi_versions=[ + gi_version.GiVersion(), + gi_version.GiVersion(), + ], + ), + ) + # Two responses for two calls + response = response + response + + # Wrap the values into proper Response objs + response = tuple( + oracledatabase.ListGiVersionsResponse.to_json(x) for x in response + ) + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values + + sample_request = {"parent": "projects/sample1/locations/sample2"} + + pager = client.list_gi_versions(request=sample_request) + + results = list(pager) + assert len(results) == 6 + assert all(isinstance(i, gi_version.GiVersion) for i in results) + + pages = list(client.list_gi_versions(request=sample_request).pages) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token + + +def test_list_minor_versions_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -36258,8 +38990,7 @@ def test_create_exascale_db_storage_vault_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.create_exascale_db_storage_vault - in client._transport._wrapped_methods + client._transport.list_minor_versions in client._transport._wrapped_methods ) # Replace cached wrapped function with mock @@ -36267,35 +38998,30 @@ def test_create_exascale_db_storage_vault_rest_use_cached_wrapped_rpc(): mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[ - client._transport.create_exascale_db_storage_vault - ] = mock_rpc + client._transport._wrapped_methods[client._transport.list_minor_versions] = ( + mock_rpc + ) request = {} - client.create_exascale_db_storage_vault(request) + client.list_minor_versions(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - # Operation methods build a cached wrapper on first rpc call - # subsequent calls should use the cached wrapper - wrapper_fn.reset_mock() - - client.create_exascale_db_storage_vault(request) + client.list_minor_versions(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_create_exascale_db_storage_vault_rest_required_fields( - request_type=gco_exascale_db_storage_vault.CreateExascaleDbStorageVaultRequest, +def test_list_minor_versions_rest_required_fields( + request_type=minor_version.ListMinorVersionsRequest, ): transport_class = transports.OracleDatabaseRestTransport request_init = {} request_init["parent"] = "" - request_init["exascale_db_storage_vault_id"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -36303,31 +39029,25 @@ def test_create_exascale_db_storage_vault_rest_required_fields( ) # verify fields with default values are dropped - assert "exascaleDbStorageVaultId" not in jsonified_request unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).create_exascale_db_storage_vault._get_unset_required_fields(jsonified_request) + ).list_minor_versions._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present - assert "exascaleDbStorageVaultId" in jsonified_request - assert ( - jsonified_request["exascaleDbStorageVaultId"] - == request_init["exascale_db_storage_vault_id"] - ) jsonified_request["parent"] = "parent_value" - jsonified_request["exascaleDbStorageVaultId"] = "exascale_db_storage_vault_id_value" unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).create_exascale_db_storage_vault._get_unset_required_fields(jsonified_request) + ).list_minor_versions._get_unset_required_fields(jsonified_request) # Check that path parameters and body parameters are not mixing in. assert not set(unset_fields) - set( ( - "exascale_db_storage_vault_id", - "request_id", + "filter", + "page_size", + "page_token", ) ) jsonified_request.update(unset_fields) @@ -36335,11 +39055,6 @@ def test_create_exascale_db_storage_vault_rest_required_fields( # verify required fields with non-default values are left alone assert "parent" in jsonified_request assert jsonified_request["parent"] == "parent_value" - assert "exascaleDbStorageVaultId" in jsonified_request - assert ( - jsonified_request["exascaleDbStorageVaultId"] - == "exascale_db_storage_vault_id_value" - ) client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), @@ -36348,7 +39063,7 @@ def test_create_exascale_db_storage_vault_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = minor_version.ListMinorVersionsResponse() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -36360,59 +39075,48 @@ def test_create_exascale_db_storage_vault_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "post", + "method": "get", "query_params": pb_request, } - transcode_result["body"] = pb_request transcode.return_value = transcode_result response_value = Response() response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = minor_version.ListMinorVersionsResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.create_exascale_db_storage_vault(request) + response = client.list_minor_versions(request) - expected_params = [ - ( - "exascaleDbStorageVaultId", - "", - ), - ("$alt", "json;enum-encoding=int"), - ] + expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_create_exascale_db_storage_vault_rest_unset_required_fields(): +def test_list_minor_versions_rest_unset_required_fields(): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = ( - transport.create_exascale_db_storage_vault._get_unset_required_fields({}) - ) + unset_fields = transport.list_minor_versions._get_unset_required_fields({}) assert set(unset_fields) == ( set( ( - "exascaleDbStorageVaultId", - "requestId", - ) - ) - & set( - ( - "parent", - "exascaleDbStorageVaultId", - "exascaleDbStorageVault", + "filter", + "pageSize", + "pageToken", ) ) + & set(("parent",)) ) -def test_create_exascale_db_storage_vault_rest_flattened(): +def test_list_minor_versions_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -36421,43 +39125,43 @@ def test_create_exascale_db_storage_vault_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = minor_version.ListMinorVersionsResponse() # get arguments that satisfy an http rule for this method - sample_request = {"parent": "projects/sample1/locations/sample2"} + sample_request = { + "parent": "projects/sample1/locations/sample2/giVersions/sample3" + } # get truthy value for each flattened field mock_args = dict( parent="parent_value", - exascale_db_storage_vault=gco_exascale_db_storage_vault.ExascaleDbStorageVault( - name="name_value" - ), - exascale_db_storage_vault_id="exascale_db_storage_vault_id_value", ) mock_args.update(sample_request) # Wrap the value into a proper Response obj response_value = Response() response_value.status_code = 200 + # Convert return value to protobuf type + return_value = minor_version.ListMinorVersionsResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.create_exascale_db_storage_vault(**mock_args) + client.list_minor_versions(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*}/exascaleDbStorageVaults" + "%s/v1/{parent=projects/*/locations/*/giVersions/*}/minorVersions" % client.transport._host, args[1], ) -def test_create_exascale_db_storage_vault_rest_flattened_error(transport: str = "rest"): +def test_list_minor_versions_rest_flattened_error(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -36466,17 +39170,78 @@ def test_create_exascale_db_storage_vault_rest_flattened_error(transport: str = # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.create_exascale_db_storage_vault( - gco_exascale_db_storage_vault.CreateExascaleDbStorageVaultRequest(), + client.list_minor_versions( + minor_version.ListMinorVersionsRequest(), parent="parent_value", - exascale_db_storage_vault=gco_exascale_db_storage_vault.ExascaleDbStorageVault( - name="name_value" + ) + + +def test_list_minor_versions_rest_pager(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + minor_version.ListMinorVersionsResponse( + minor_versions=[ + minor_version.MinorVersion(), + minor_version.MinorVersion(), + minor_version.MinorVersion(), + ], + next_page_token="abc", ), - exascale_db_storage_vault_id="exascale_db_storage_vault_id_value", + minor_version.ListMinorVersionsResponse( + minor_versions=[], + next_page_token="def", + ), + minor_version.ListMinorVersionsResponse( + minor_versions=[ + minor_version.MinorVersion(), + ], + next_page_token="ghi", + ), + minor_version.ListMinorVersionsResponse( + minor_versions=[ + minor_version.MinorVersion(), + minor_version.MinorVersion(), + ], + ), + ) + # Two responses for two calls + response = response + response + + # Wrap the values into proper Response objs + response = tuple( + minor_version.ListMinorVersionsResponse.to_json(x) for x in response ) + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values + + sample_request = { + "parent": "projects/sample1/locations/sample2/giVersions/sample3" + } + pager = client.list_minor_versions(request=sample_request) -def test_delete_exascale_db_storage_vault_rest_use_cached_wrapped_rpc(): + results = list(pager) + assert len(results) == 6 + assert all(isinstance(i, minor_version.MinorVersion) for i in results) + + pages = list(client.list_minor_versions(request=sample_request).pages) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token + + +def test_list_db_system_shapes_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -36491,7 +39256,7 @@ def test_delete_exascale_db_storage_vault_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.delete_exascale_db_storage_vault + client._transport.list_db_system_shapes in client._transport._wrapped_methods ) @@ -36500,34 +39265,30 @@ def test_delete_exascale_db_storage_vault_rest_use_cached_wrapped_rpc(): mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[ - client._transport.delete_exascale_db_storage_vault - ] = mock_rpc + client._transport._wrapped_methods[client._transport.list_db_system_shapes] = ( + mock_rpc + ) request = {} - client.delete_exascale_db_storage_vault(request) + client.list_db_system_shapes(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - # Operation methods build a cached wrapper on first rpc call - # subsequent calls should use the cached wrapper - wrapper_fn.reset_mock() - - client.delete_exascale_db_storage_vault(request) + client.list_db_system_shapes(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_delete_exascale_db_storage_vault_rest_required_fields( - request_type=exascale_db_storage_vault.DeleteExascaleDbStorageVaultRequest, +def test_list_db_system_shapes_rest_required_fields( + request_type=oracledatabase.ListDbSystemShapesRequest, ): transport_class = transports.OracleDatabaseRestTransport request_init = {} - request_init["name"] = "" + request_init["parent"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -36538,23 +39299,29 @@ def test_delete_exascale_db_storage_vault_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).delete_exascale_db_storage_vault._get_unset_required_fields(jsonified_request) + ).list_db_system_shapes._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present - jsonified_request["name"] = "name_value" + jsonified_request["parent"] = "parent_value" unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).delete_exascale_db_storage_vault._get_unset_required_fields(jsonified_request) + ).list_db_system_shapes._get_unset_required_fields(jsonified_request) # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set(("request_id",)) + assert not set(unset_fields) - set( + ( + "filter", + "page_size", + "page_token", + ) + ) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone - assert "name" in jsonified_request - assert jsonified_request["name"] == "name_value" + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), @@ -36563,7 +39330,7 @@ def test_delete_exascale_db_storage_vault_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = oracledatabase.ListDbSystemShapesResponse() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -36575,38 +39342,48 @@ def test_delete_exascale_db_storage_vault_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "delete", + "method": "get", "query_params": pb_request, } transcode.return_value = transcode_result response_value = Response() response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = oracledatabase.ListDbSystemShapesResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.delete_exascale_db_storage_vault(request) + response = client.list_db_system_shapes(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_delete_exascale_db_storage_vault_rest_unset_required_fields(): +def test_list_db_system_shapes_rest_unset_required_fields(): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = ( - transport.delete_exascale_db_storage_vault._get_unset_required_fields({}) + unset_fields = transport.list_db_system_shapes._get_unset_required_fields({}) + assert set(unset_fields) == ( + set( + ( + "filter", + "pageSize", + "pageToken", + ) + ) + & set(("parent",)) ) - assert set(unset_fields) == (set(("requestId",)) & set(("name",))) -def test_delete_exascale_db_storage_vault_rest_flattened(): +def test_list_db_system_shapes_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -36615,41 +39392,41 @@ def test_delete_exascale_db_storage_vault_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = oracledatabase.ListDbSystemShapesResponse() # get arguments that satisfy an http rule for this method - sample_request = { - "name": "projects/sample1/locations/sample2/exascaleDbStorageVaults/sample3" - } + sample_request = {"parent": "projects/sample1/locations/sample2"} # get truthy value for each flattened field mock_args = dict( - name="name_value", + parent="parent_value", ) mock_args.update(sample_request) # Wrap the value into a proper Response obj response_value = Response() response_value.status_code = 200 + # Convert return value to protobuf type + return_value = oracledatabase.ListDbSystemShapesResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.delete_exascale_db_storage_vault(**mock_args) + client.list_db_system_shapes(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1/{name=projects/*/locations/*/exascaleDbStorageVaults/*}" + "%s/v1/{parent=projects/*/locations/*}/dbSystemShapes" % client.transport._host, args[1], ) -def test_delete_exascale_db_storage_vault_rest_flattened_error(transport: str = "rest"): +def test_list_db_system_shapes_rest_flattened_error(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -36658,13 +39435,76 @@ def test_delete_exascale_db_storage_vault_rest_flattened_error(transport: str = # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.delete_exascale_db_storage_vault( - exascale_db_storage_vault.DeleteExascaleDbStorageVaultRequest(), - name="name_value", + client.list_db_system_shapes( + oracledatabase.ListDbSystemShapesRequest(), + parent="parent_value", ) -def test_list_db_system_initial_storage_sizes_rest_use_cached_wrapped_rpc(): +def test_list_db_system_shapes_rest_pager(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + oracledatabase.ListDbSystemShapesResponse( + db_system_shapes=[ + db_system_shape.DbSystemShape(), + db_system_shape.DbSystemShape(), + db_system_shape.DbSystemShape(), + ], + next_page_token="abc", + ), + oracledatabase.ListDbSystemShapesResponse( + db_system_shapes=[], + next_page_token="def", + ), + oracledatabase.ListDbSystemShapesResponse( + db_system_shapes=[ + db_system_shape.DbSystemShape(), + ], + next_page_token="ghi", + ), + oracledatabase.ListDbSystemShapesResponse( + db_system_shapes=[ + db_system_shape.DbSystemShape(), + db_system_shape.DbSystemShape(), + ], + ), + ) + # Two responses for two calls + response = response + response + + # Wrap the values into proper Response objs + response = tuple( + oracledatabase.ListDbSystemShapesResponse.to_json(x) for x in response + ) + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values + + sample_request = {"parent": "projects/sample1/locations/sample2"} + + pager = client.list_db_system_shapes(request=sample_request) + + results = list(pager) + assert len(results) == 6 + assert all(isinstance(i, db_system_shape.DbSystemShape) for i in results) + + pages = list(client.list_db_system_shapes(request=sample_request).pages) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token + + +def test_list_autonomous_databases_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -36679,7 +39519,7 @@ def test_list_db_system_initial_storage_sizes_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.list_db_system_initial_storage_sizes + client._transport.list_autonomous_databases in client._transport._wrapped_methods ) @@ -36689,24 +39529,24 @@ def test_list_db_system_initial_storage_sizes_rest_use_cached_wrapped_rpc(): "foo" # operation_request.operation in compute client(s) expect a string. ) client._transport._wrapped_methods[ - client._transport.list_db_system_initial_storage_sizes + client._transport.list_autonomous_databases ] = mock_rpc request = {} - client.list_db_system_initial_storage_sizes(request) + client.list_autonomous_databases(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_db_system_initial_storage_sizes(request) + client.list_autonomous_databases(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_list_db_system_initial_storage_sizes_rest_required_fields( - request_type=db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest, +def test_list_autonomous_databases_rest_required_fields( + request_type=oracledatabase.ListAutonomousDatabasesRequest, ): transport_class = transports.OracleDatabaseRestTransport @@ -36722,7 +39562,7 @@ def test_list_db_system_initial_storage_sizes_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_db_system_initial_storage_sizes._get_unset_required_fields(jsonified_request) + ).list_autonomous_databases._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present @@ -36731,10 +39571,12 @@ def test_list_db_system_initial_storage_sizes_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_db_system_initial_storage_sizes._get_unset_required_fields(jsonified_request) + ).list_autonomous_databases._get_unset_required_fields(jsonified_request) # Check that path parameters and body parameters are not mixing in. assert not set(unset_fields) - set( ( + "filter", + "order_by", "page_size", "page_token", ) @@ -36752,9 +39594,7 @@ def test_list_db_system_initial_storage_sizes_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = ( - db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse() - ) + return_value = oracledatabase.ListAutonomousDatabasesResponse() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -36775,7 +39615,7 @@ def test_list_db_system_initial_storage_sizes_rest_required_fields( response_value.status_code = 200 # Convert return value to protobuf type - return_value = db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse.pb( + return_value = oracledatabase.ListAutonomousDatabasesResponse.pb( return_value ) json_return_value = json_format.MessageToJson(return_value) @@ -36784,24 +39624,24 @@ def test_list_db_system_initial_storage_sizes_rest_required_fields( req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_db_system_initial_storage_sizes(request) + response = client.list_autonomous_databases(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_list_db_system_initial_storage_sizes_rest_unset_required_fields(): +def test_list_autonomous_databases_rest_unset_required_fields(): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = ( - transport.list_db_system_initial_storage_sizes._get_unset_required_fields({}) - ) + unset_fields = transport.list_autonomous_databases._get_unset_required_fields({}) assert set(unset_fields) == ( set( ( + "filter", + "orderBy", "pageSize", "pageToken", ) @@ -36810,7 +39650,7 @@ def test_list_db_system_initial_storage_sizes_rest_unset_required_fields(): ) -def test_list_db_system_initial_storage_sizes_rest_flattened(): +def test_list_autonomous_databases_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -36819,9 +39659,7 @@ def test_list_db_system_initial_storage_sizes_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = ( - db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse() - ) + return_value = oracledatabase.ListAutonomousDatabasesResponse() # get arguments that satisfy an http rule for this method sample_request = {"parent": "projects/sample1/locations/sample2"} @@ -36836,32 +39674,26 @@ def test_list_db_system_initial_storage_sizes_rest_flattened(): response_value = Response() response_value.status_code = 200 # Convert return value to protobuf type - return_value = ( - db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse.pb( - return_value - ) - ) + return_value = oracledatabase.ListAutonomousDatabasesResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_db_system_initial_storage_sizes(**mock_args) + client.list_autonomous_databases(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*}/dbSystemInitialStorageSizes" + "%s/v1/{parent=projects/*/locations/*}/autonomousDatabases" % client.transport._host, args[1], ) -def test_list_db_system_initial_storage_sizes_rest_flattened_error( - transport: str = "rest", -): +def test_list_autonomous_databases_rest_flattened_error(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -36870,13 +39702,13 @@ def test_list_db_system_initial_storage_sizes_rest_flattened_error( # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.list_db_system_initial_storage_sizes( - db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest(), + client.list_autonomous_databases( + oracledatabase.ListAutonomousDatabasesRequest(), parent="parent_value", ) -def test_list_db_system_initial_storage_sizes_rest_pager(transport: str = "rest"): +def test_list_autonomous_databases_rest_pager(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -36888,28 +39720,28 @@ def test_list_db_system_initial_storage_sizes_rest_pager(transport: str = "rest" # with mock.patch.object(path_template, 'transcode') as transcode: # Set the response as a series of pages response = ( - db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse( - db_system_initial_storage_sizes=[ - db_system_initial_storage_size.DbSystemInitialStorageSize(), - db_system_initial_storage_size.DbSystemInitialStorageSize(), - db_system_initial_storage_size.DbSystemInitialStorageSize(), + oracledatabase.ListAutonomousDatabasesResponse( + autonomous_databases=[ + autonomous_database.AutonomousDatabase(), + autonomous_database.AutonomousDatabase(), + autonomous_database.AutonomousDatabase(), ], next_page_token="abc", ), - db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse( - db_system_initial_storage_sizes=[], + oracledatabase.ListAutonomousDatabasesResponse( + autonomous_databases=[], next_page_token="def", ), - db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse( - db_system_initial_storage_sizes=[ - db_system_initial_storage_size.DbSystemInitialStorageSize(), + oracledatabase.ListAutonomousDatabasesResponse( + autonomous_databases=[ + autonomous_database.AutonomousDatabase(), ], next_page_token="ghi", ), - db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse( - db_system_initial_storage_sizes=[ - db_system_initial_storage_size.DbSystemInitialStorageSize(), - db_system_initial_storage_size.DbSystemInitialStorageSize(), + oracledatabase.ListAutonomousDatabasesResponse( + autonomous_databases=[ + autonomous_database.AutonomousDatabase(), + autonomous_database.AutonomousDatabase(), ], ), ) @@ -36918,10 +39750,7 @@ def test_list_db_system_initial_storage_sizes_rest_pager(transport: str = "rest" # Wrap the values into proper Response objs response = tuple( - db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse.to_json( - x - ) - for x in response + oracledatabase.ListAutonomousDatabasesResponse.to_json(x) for x in response ) return_values = tuple(Response() for i in response) for return_val, response_val in zip(return_values, response): @@ -36931,23 +39760,20 @@ def test_list_db_system_initial_storage_sizes_rest_pager(transport: str = "rest" sample_request = {"parent": "projects/sample1/locations/sample2"} - pager = client.list_db_system_initial_storage_sizes(request=sample_request) + pager = client.list_autonomous_databases(request=sample_request) results = list(pager) assert len(results) == 6 assert all( - isinstance(i, db_system_initial_storage_size.DbSystemInitialStorageSize) - for i in results + isinstance(i, autonomous_database.AutonomousDatabase) for i in results ) - pages = list( - client.list_db_system_initial_storage_sizes(request=sample_request).pages - ) + pages = list(client.list_autonomous_databases(request=sample_request).pages) for page_, token in zip(pages, ["abc", "def", "ghi", ""]): assert page_.raw_page.next_page_token == token -def test_list_databases_rest_use_cached_wrapped_rpc(): +def test_get_autonomous_database_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -36961,35 +39787,40 @@ def test_list_databases_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert client._transport.list_databases in client._transport._wrapped_methods + assert ( + client._transport.get_autonomous_database + in client._transport._wrapped_methods + ) # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.list_databases] = mock_rpc + client._transport._wrapped_methods[ + client._transport.get_autonomous_database + ] = mock_rpc request = {} - client.list_databases(request) + client.get_autonomous_database(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_databases(request) + client.get_autonomous_database(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_list_databases_rest_required_fields( - request_type=database.ListDatabasesRequest, +def test_get_autonomous_database_rest_required_fields( + request_type=oracledatabase.GetAutonomousDatabaseRequest, ): transport_class = transports.OracleDatabaseRestTransport request_init = {} - request_init["parent"] = "" + request_init["name"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -37000,29 +39831,21 @@ def test_list_databases_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_databases._get_unset_required_fields(jsonified_request) + ).get_autonomous_database._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present - jsonified_request["parent"] = "parent_value" + jsonified_request["name"] = "name_value" unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_databases._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "filter", - "page_size", - "page_token", - ) - ) + ).get_autonomous_database._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), @@ -37031,7 +39854,7 @@ def test_list_databases_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = database.ListDatabasesResponse() + return_value = autonomous_database.AutonomousDatabase() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -37052,39 +39875,30 @@ def test_list_databases_rest_required_fields( response_value.status_code = 200 # Convert return value to protobuf type - return_value = database.ListDatabasesResponse.pb(return_value) + return_value = autonomous_database.AutonomousDatabase.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_databases(request) + response = client.get_autonomous_database(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_list_databases_rest_unset_required_fields(): +def test_get_autonomous_database_rest_unset_required_fields(): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.list_databases._get_unset_required_fields({}) - assert set(unset_fields) == ( - set( - ( - "filter", - "pageSize", - "pageToken", - ) - ) - & set(("parent",)) - ) + unset_fields = transport.get_autonomous_database._get_unset_required_fields({}) + assert set(unset_fields) == (set(()) & set(("name",))) -def test_list_databases_rest_flattened(): +def test_get_autonomous_database_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -37093,14 +39907,16 @@ def test_list_databases_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = database.ListDatabasesResponse() + return_value = autonomous_database.AutonomousDatabase() # get arguments that satisfy an http rule for this method - sample_request = {"parent": "projects/sample1/locations/sample2"} + sample_request = { + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + } # get truthy value for each flattened field mock_args = dict( - parent="parent_value", + name="name_value", ) mock_args.update(sample_request) @@ -37108,25 +39924,26 @@ def test_list_databases_rest_flattened(): response_value = Response() response_value.status_code = 200 # Convert return value to protobuf type - return_value = database.ListDatabasesResponse.pb(return_value) + return_value = autonomous_database.AutonomousDatabase.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_databases(**mock_args) + client.get_autonomous_database(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*}/databases" % client.transport._host, + "%s/v1/{name=projects/*/locations/*/autonomousDatabases/*}" + % client.transport._host, args[1], ) -def test_list_databases_rest_flattened_error(transport: str = "rest"): +def test_get_autonomous_database_rest_flattened_error(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -37135,74 +39952,13 @@ def test_list_databases_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.list_databases( - database.ListDatabasesRequest(), - parent="parent_value", - ) - - -def test_list_databases_rest_pager(transport: str = "rest"): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, - ) - - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # TODO(kbandes): remove this mock unless there's a good reason for it. - # with mock.patch.object(path_template, 'transcode') as transcode: - # Set the response as a series of pages - response = ( - database.ListDatabasesResponse( - databases=[ - database.Database(), - database.Database(), - database.Database(), - ], - next_page_token="abc", - ), - database.ListDatabasesResponse( - databases=[], - next_page_token="def", - ), - database.ListDatabasesResponse( - databases=[ - database.Database(), - ], - next_page_token="ghi", - ), - database.ListDatabasesResponse( - databases=[ - database.Database(), - database.Database(), - ], - ), + client.get_autonomous_database( + oracledatabase.GetAutonomousDatabaseRequest(), + name="name_value", ) - # Two responses for two calls - response = response + response - - # Wrap the values into proper Response objs - response = tuple(database.ListDatabasesResponse.to_json(x) for x in response) - return_values = tuple(Response() for i in response) - for return_val, response_val in zip(return_values, response): - return_val._content = response_val.encode("UTF-8") - return_val.status_code = 200 - req.side_effect = return_values - - sample_request = {"parent": "projects/sample1/locations/sample2"} - - pager = client.list_databases(request=sample_request) - - results = list(pager) - assert len(results) == 6 - assert all(isinstance(i, database.Database) for i in results) - - pages = list(client.list_databases(request=sample_request).pages) - for page_, token in zip(pages, ["abc", "def", "ghi", ""]): - assert page_.raw_page.next_page_token == token -def test_get_database_rest_use_cached_wrapped_rpc(): +def test_create_autonomous_database_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -37216,33 +39972,45 @@ def test_get_database_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert client._transport.get_database in client._transport._wrapped_methods + assert ( + client._transport.create_autonomous_database + in client._transport._wrapped_methods + ) # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.get_database] = mock_rpc + client._transport._wrapped_methods[ + client._transport.create_autonomous_database + ] = mock_rpc request = {} - client.get_database(request) + client.create_autonomous_database(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.get_database(request) + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.create_autonomous_database(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_get_database_rest_required_fields(request_type=database.GetDatabaseRequest): +def test_create_autonomous_database_rest_required_fields( + request_type=oracledatabase.CreateAutonomousDatabaseRequest, +): transport_class = transports.OracleDatabaseRestTransport request_init = {} - request_init["name"] = "" + request_init["parent"] = "" + request_init["autonomous_database_id"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -37250,24 +40018,40 @@ def test_get_database_rest_required_fields(request_type=database.GetDatabaseRequ ) # verify fields with default values are dropped + assert "autonomousDatabaseId" not in jsonified_request unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).get_database._get_unset_required_fields(jsonified_request) + ).create_autonomous_database._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present + assert "autonomousDatabaseId" in jsonified_request + assert ( + jsonified_request["autonomousDatabaseId"] + == request_init["autonomous_database_id"] + ) - jsonified_request["name"] = "name_value" + jsonified_request["parent"] = "parent_value" + jsonified_request["autonomousDatabaseId"] = "autonomous_database_id_value" unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).get_database._get_unset_required_fields(jsonified_request) + ).create_autonomous_database._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "autonomous_database_id", + "request_id", + ) + ) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone - assert "name" in jsonified_request - assert jsonified_request["name"] == "name_value" + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + assert "autonomousDatabaseId" in jsonified_request + assert jsonified_request["autonomousDatabaseId"] == "autonomous_database_id_value" client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), @@ -37276,7 +40060,7 @@ def test_get_database_rest_required_fields(request_type=database.GetDatabaseRequ request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = database.Database() + return_value = operations_pb2.Operation(name="operations/spam") # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -37288,39 +40072,57 @@ def test_get_database_rest_required_fields(request_type=database.GetDatabaseRequ pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "get", + "method": "post", "query_params": pb_request, } + transcode_result["body"] = pb_request transcode.return_value = transcode_result response_value = Response() response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = database.Database.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_database(request) + response = client.create_autonomous_database(request) - expected_params = [("$alt", "json;enum-encoding=int")] + expected_params = [ + ( + "autonomousDatabaseId", + "", + ), + ("$alt", "json;enum-encoding=int"), + ] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_get_database_rest_unset_required_fields(): +def test_create_autonomous_database_rest_unset_required_fields(): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.get_database._get_unset_required_fields({}) - assert set(unset_fields) == (set(()) & set(("name",))) + unset_fields = transport.create_autonomous_database._get_unset_required_fields({}) + assert set(unset_fields) == ( + set( + ( + "autonomousDatabaseId", + "requestId", + ) + ) + & set( + ( + "parent", + "autonomousDatabaseId", + "autonomousDatabase", + ) + ) + ) -def test_get_database_rest_flattened(): +def test_create_autonomous_database_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -37329,42 +40131,43 @@ def test_get_database_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = database.Database() + return_value = operations_pb2.Operation(name="operations/spam") # get arguments that satisfy an http rule for this method - sample_request = { - "name": "projects/sample1/locations/sample2/databases/sample3" - } + sample_request = {"parent": "projects/sample1/locations/sample2"} # get truthy value for each flattened field mock_args = dict( - name="name_value", + parent="parent_value", + autonomous_database=gco_autonomous_database.AutonomousDatabase( + name="name_value" + ), + autonomous_database_id="autonomous_database_id_value", ) mock_args.update(sample_request) # Wrap the value into a proper Response obj response_value = Response() response_value.status_code = 200 - # Convert return value to protobuf type - return_value = database.Database.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_database(**mock_args) + client.create_autonomous_database(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1/{name=projects/*/locations/*/databases/*}" % client.transport._host, + "%s/v1/{parent=projects/*/locations/*}/autonomousDatabases" + % client.transport._host, args[1], ) -def test_get_database_rest_flattened_error(transport: str = "rest"): +def test_create_autonomous_database_rest_flattened_error(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -37373,13 +40176,17 @@ def test_get_database_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.get_database( - database.GetDatabaseRequest(), - name="name_value", + client.create_autonomous_database( + oracledatabase.CreateAutonomousDatabaseRequest(), + parent="parent_value", + autonomous_database=gco_autonomous_database.AutonomousDatabase( + name="name_value" + ), + autonomous_database_id="autonomous_database_id_value", ) -def test_list_pluggable_databases_rest_use_cached_wrapped_rpc(): +def test_update_autonomous_database_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -37394,7 +40201,7 @@ def test_list_pluggable_databases_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.list_pluggable_databases + client._transport.update_autonomous_database in client._transport._wrapped_methods ) @@ -37404,29 +40211,32 @@ def test_list_pluggable_databases_rest_use_cached_wrapped_rpc(): "foo" # operation_request.operation in compute client(s) expect a string. ) client._transport._wrapped_methods[ - client._transport.list_pluggable_databases + client._transport.update_autonomous_database ] = mock_rpc request = {} - client.list_pluggable_databases(request) + client.update_autonomous_database(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_pluggable_databases(request) + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.update_autonomous_database(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_list_pluggable_databases_rest_required_fields( - request_type=pluggable_database.ListPluggableDatabasesRequest, +def test_update_autonomous_database_rest_required_fields( + request_type=oracledatabase.UpdateAutonomousDatabaseRequest, ): transport_class = transports.OracleDatabaseRestTransport request_init = {} - request_init["parent"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -37437,29 +40247,24 @@ def test_list_pluggable_databases_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_pluggable_databases._get_unset_required_fields(jsonified_request) + ).update_autonomous_database._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present - jsonified_request["parent"] = "parent_value" - unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_pluggable_databases._get_unset_required_fields(jsonified_request) + ).update_autonomous_database._get_unset_required_fields(jsonified_request) # Check that path parameters and body parameters are not mixing in. assert not set(unset_fields) - set( ( - "filter", - "page_size", - "page_token", + "request_id", + "update_mask", ) ) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), @@ -37468,7 +40273,7 @@ def test_list_pluggable_databases_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = pluggable_database.ListPluggableDatabasesResponse() + return_value = operations_pb2.Operation(name="operations/spam") # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -37480,50 +40285,45 @@ def test_list_pluggable_databases_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "get", + "method": "patch", "query_params": pb_request, } + transcode_result["body"] = pb_request transcode.return_value = transcode_result response_value = Response() response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = pluggable_database.ListPluggableDatabasesResponse.pb( - return_value - ) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_pluggable_databases(request) + response = client.update_autonomous_database(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_list_pluggable_databases_rest_unset_required_fields(): +def test_update_autonomous_database_rest_unset_required_fields(): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.list_pluggable_databases._get_unset_required_fields({}) + unset_fields = transport.update_autonomous_database._get_unset_required_fields({}) assert set(unset_fields) == ( set( ( - "filter", - "pageSize", - "pageToken", + "requestId", + "updateMask", ) ) - & set(("parent",)) + & set(("autonomousDatabase",)) ) -def test_list_pluggable_databases_rest_flattened(): +def test_update_autonomous_database_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -37532,43 +40332,46 @@ def test_list_pluggable_databases_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = pluggable_database.ListPluggableDatabasesResponse() + return_value = operations_pb2.Operation(name="operations/spam") # get arguments that satisfy an http rule for this method - sample_request = {"parent": "projects/sample1/locations/sample2"} + sample_request = { + "autonomous_database": { + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + } + } # get truthy value for each flattened field mock_args = dict( - parent="parent_value", + autonomous_database=gco_autonomous_database.AutonomousDatabase( + name="name_value" + ), + update_mask=field_mask_pb2.FieldMask(paths=["paths_value"]), ) mock_args.update(sample_request) # Wrap the value into a proper Response obj response_value = Response() response_value.status_code = 200 - # Convert return value to protobuf type - return_value = pluggable_database.ListPluggableDatabasesResponse.pb( - return_value - ) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_pluggable_databases(**mock_args) + client.update_autonomous_database(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*}/pluggableDatabases" + "%s/v1/{autonomous_database.name=projects/*/locations/*/autonomousDatabases/*}" % client.transport._host, args[1], ) -def test_list_pluggable_databases_rest_flattened_error(transport: str = "rest"): +def test_update_autonomous_database_rest_flattened_error(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -37577,77 +40380,16 @@ def test_list_pluggable_databases_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.list_pluggable_databases( - pluggable_database.ListPluggableDatabasesRequest(), - parent="parent_value", - ) - - -def test_list_pluggable_databases_rest_pager(transport: str = "rest"): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, - ) - - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # TODO(kbandes): remove this mock unless there's a good reason for it. - # with mock.patch.object(path_template, 'transcode') as transcode: - # Set the response as a series of pages - response = ( - pluggable_database.ListPluggableDatabasesResponse( - pluggable_databases=[ - pluggable_database.PluggableDatabase(), - pluggable_database.PluggableDatabase(), - pluggable_database.PluggableDatabase(), - ], - next_page_token="abc", - ), - pluggable_database.ListPluggableDatabasesResponse( - pluggable_databases=[], - next_page_token="def", - ), - pluggable_database.ListPluggableDatabasesResponse( - pluggable_databases=[ - pluggable_database.PluggableDatabase(), - ], - next_page_token="ghi", - ), - pluggable_database.ListPluggableDatabasesResponse( - pluggable_databases=[ - pluggable_database.PluggableDatabase(), - pluggable_database.PluggableDatabase(), - ], + client.update_autonomous_database( + oracledatabase.UpdateAutonomousDatabaseRequest(), + autonomous_database=gco_autonomous_database.AutonomousDatabase( + name="name_value" ), + update_mask=field_mask_pb2.FieldMask(paths=["paths_value"]), ) - # Two responses for two calls - response = response + response - - # Wrap the values into proper Response objs - response = tuple( - pluggable_database.ListPluggableDatabasesResponse.to_json(x) - for x in response - ) - return_values = tuple(Response() for i in response) - for return_val, response_val in zip(return_values, response): - return_val._content = response_val.encode("UTF-8") - return_val.status_code = 200 - req.side_effect = return_values - - sample_request = {"parent": "projects/sample1/locations/sample2"} - - pager = client.list_pluggable_databases(request=sample_request) - - results = list(pager) - assert len(results) == 6 - assert all(isinstance(i, pluggable_database.PluggableDatabase) for i in results) - - pages = list(client.list_pluggable_databases(request=sample_request).pages) - for page_, token in zip(pages, ["abc", "def", "ghi", ""]): - assert page_.raw_page.next_page_token == token -def test_get_pluggable_database_rest_use_cached_wrapped_rpc(): +def test_delete_autonomous_database_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -37662,7 +40404,7 @@ def test_get_pluggable_database_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.get_pluggable_database + client._transport.delete_autonomous_database in client._transport._wrapped_methods ) @@ -37671,25 +40413,29 @@ def test_get_pluggable_database_rest_use_cached_wrapped_rpc(): mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.get_pluggable_database] = ( - mock_rpc - ) + client._transport._wrapped_methods[ + client._transport.delete_autonomous_database + ] = mock_rpc request = {} - client.get_pluggable_database(request) + client.delete_autonomous_database(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.get_pluggable_database(request) + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.delete_autonomous_database(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_get_pluggable_database_rest_required_fields( - request_type=pluggable_database.GetPluggableDatabaseRequest, +def test_delete_autonomous_database_rest_required_fields( + request_type=oracledatabase.DeleteAutonomousDatabaseRequest, ): transport_class = transports.OracleDatabaseRestTransport @@ -37705,7 +40451,7 @@ def test_get_pluggable_database_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).get_pluggable_database._get_unset_required_fields(jsonified_request) + ).delete_autonomous_database._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present @@ -37714,7 +40460,9 @@ def test_get_pluggable_database_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).get_pluggable_database._get_unset_required_fields(jsonified_request) + ).delete_autonomous_database._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set(("request_id",)) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone @@ -37728,7 +40476,7 @@ def test_get_pluggable_database_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = pluggable_database.PluggableDatabase() + return_value = operations_pb2.Operation(name="operations/spam") # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -37740,39 +40488,36 @@ def test_get_pluggable_database_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "get", + "method": "delete", "query_params": pb_request, } transcode.return_value = transcode_result response_value = Response() response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = pluggable_database.PluggableDatabase.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_pluggable_database(request) + response = client.delete_autonomous_database(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_get_pluggable_database_rest_unset_required_fields(): +def test_delete_autonomous_database_rest_unset_required_fields(): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.get_pluggable_database._get_unset_required_fields({}) - assert set(unset_fields) == (set(()) & set(("name",))) + unset_fields = transport.delete_autonomous_database._get_unset_required_fields({}) + assert set(unset_fields) == (set(("requestId",)) & set(("name",))) -def test_get_pluggable_database_rest_flattened(): +def test_delete_autonomous_database_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -37781,11 +40526,11 @@ def test_get_pluggable_database_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = pluggable_database.PluggableDatabase() + return_value = operations_pb2.Operation(name="operations/spam") # get arguments that satisfy an http rule for this method sample_request = { - "name": "projects/sample1/locations/sample2/pluggableDatabases/sample3" + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" } # get truthy value for each flattened field @@ -37797,27 +40542,25 @@ def test_get_pluggable_database_rest_flattened(): # Wrap the value into a proper Response obj response_value = Response() response_value.status_code = 200 - # Convert return value to protobuf type - return_value = pluggable_database.PluggableDatabase.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_pluggable_database(**mock_args) + client.delete_autonomous_database(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1/{name=projects/*/locations/*/pluggableDatabases/*}" + "%s/v1/{name=projects/*/locations/*/autonomousDatabases/*}" % client.transport._host, args[1], ) -def test_get_pluggable_database_rest_flattened_error(transport: str = "rest"): +def test_delete_autonomous_database_rest_flattened_error(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -37826,13 +40569,13 @@ def test_get_pluggable_database_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.get_pluggable_database( - pluggable_database.GetPluggableDatabaseRequest(), + client.delete_autonomous_database( + oracledatabase.DeleteAutonomousDatabaseRequest(), name="name_value", ) -def test_list_db_systems_rest_use_cached_wrapped_rpc(): +def test_restore_autonomous_database_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -37846,35 +40589,44 @@ def test_list_db_systems_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert client._transport.list_db_systems in client._transport._wrapped_methods + assert ( + client._transport.restore_autonomous_database + in client._transport._wrapped_methods + ) # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.list_db_systems] = mock_rpc + client._transport._wrapped_methods[ + client._transport.restore_autonomous_database + ] = mock_rpc request = {} - client.list_db_systems(request) + client.restore_autonomous_database(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_db_systems(request) + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.restore_autonomous_database(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_list_db_systems_rest_required_fields( - request_type=db_system.ListDbSystemsRequest, +def test_restore_autonomous_database_rest_required_fields( + request_type=oracledatabase.RestoreAutonomousDatabaseRequest, ): transport_class = transports.OracleDatabaseRestTransport request_init = {} - request_init["parent"] = "" + request_init["name"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -37885,30 +40637,21 @@ def test_list_db_systems_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_db_systems._get_unset_required_fields(jsonified_request) + ).restore_autonomous_database._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present - jsonified_request["parent"] = "parent_value" + jsonified_request["name"] = "name_value" unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_db_systems._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "filter", - "order_by", - "page_size", - "page_token", - ) - ) + ).restore_autonomous_database._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), @@ -37917,7 +40660,7 @@ def test_list_db_systems_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = db_system.ListDbSystemsResponse() + return_value = operations_pb2.Operation(name="operations/spam") # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -37929,49 +40672,45 @@ def test_list_db_systems_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "get", + "method": "post", "query_params": pb_request, } + transcode_result["body"] = pb_request transcode.return_value = transcode_result response_value = Response() response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = db_system.ListDbSystemsResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_db_systems(request) + response = client.restore_autonomous_database(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_list_db_systems_rest_unset_required_fields(): +def test_restore_autonomous_database_rest_unset_required_fields(): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.list_db_systems._get_unset_required_fields({}) + unset_fields = transport.restore_autonomous_database._get_unset_required_fields({}) assert set(unset_fields) == ( - set( + set(()) + & set( ( - "filter", - "orderBy", - "pageSize", - "pageToken", + "name", + "restoreTime", ) ) - & set(("parent",)) ) -def test_list_db_systems_rest_flattened(): +def test_restore_autonomous_database_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -37980,40 +40719,42 @@ def test_list_db_systems_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = db_system.ListDbSystemsResponse() + return_value = operations_pb2.Operation(name="operations/spam") # get arguments that satisfy an http rule for this method - sample_request = {"parent": "projects/sample1/locations/sample2"} + sample_request = { + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + } # get truthy value for each flattened field mock_args = dict( - parent="parent_value", + name="name_value", + restore_time=timestamp_pb2.Timestamp(seconds=751), ) mock_args.update(sample_request) # Wrap the value into a proper Response obj response_value = Response() response_value.status_code = 200 - # Convert return value to protobuf type - return_value = db_system.ListDbSystemsResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_db_systems(**mock_args) + client.restore_autonomous_database(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*}/dbSystems" % client.transport._host, + "%s/v1/{name=projects/*/locations/*/autonomousDatabases/*}:restore" + % client.transport._host, args[1], ) -def test_list_db_systems_rest_flattened_error(transport: str = "rest"): +def test_restore_autonomous_database_rest_flattened_error(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -38022,74 +40763,14 @@ def test_list_db_systems_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.list_db_systems( - db_system.ListDbSystemsRequest(), - parent="parent_value", - ) - - -def test_list_db_systems_rest_pager(transport: str = "rest"): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, - ) - - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # TODO(kbandes): remove this mock unless there's a good reason for it. - # with mock.patch.object(path_template, 'transcode') as transcode: - # Set the response as a series of pages - response = ( - db_system.ListDbSystemsResponse( - db_systems=[ - db_system.DbSystem(), - db_system.DbSystem(), - db_system.DbSystem(), - ], - next_page_token="abc", - ), - db_system.ListDbSystemsResponse( - db_systems=[], - next_page_token="def", - ), - db_system.ListDbSystemsResponse( - db_systems=[ - db_system.DbSystem(), - ], - next_page_token="ghi", - ), - db_system.ListDbSystemsResponse( - db_systems=[ - db_system.DbSystem(), - db_system.DbSystem(), - ], - ), + client.restore_autonomous_database( + oracledatabase.RestoreAutonomousDatabaseRequest(), + name="name_value", + restore_time=timestamp_pb2.Timestamp(seconds=751), ) - # Two responses for two calls - response = response + response - - # Wrap the values into proper Response objs - response = tuple(db_system.ListDbSystemsResponse.to_json(x) for x in response) - return_values = tuple(Response() for i in response) - for return_val, response_val in zip(return_values, response): - return_val._content = response_val.encode("UTF-8") - return_val.status_code = 200 - req.side_effect = return_values - - sample_request = {"parent": "projects/sample1/locations/sample2"} - - pager = client.list_db_systems(request=sample_request) - - results = list(pager) - assert len(results) == 6 - assert all(isinstance(i, db_system.DbSystem) for i in results) - - pages = list(client.list_db_systems(request=sample_request).pages) - for page_, token in zip(pages, ["abc", "def", "ghi", ""]): - assert page_.raw_page.next_page_token == token -def test_get_db_system_rest_use_cached_wrapped_rpc(): +def test_generate_autonomous_database_wallet_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -38103,33 +40784,41 @@ def test_get_db_system_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert client._transport.get_db_system in client._transport._wrapped_methods + assert ( + client._transport.generate_autonomous_database_wallet + in client._transport._wrapped_methods + ) # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.get_db_system] = mock_rpc + client._transport._wrapped_methods[ + client._transport.generate_autonomous_database_wallet + ] = mock_rpc request = {} - client.get_db_system(request) + client.generate_autonomous_database_wallet(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.get_db_system(request) + client.generate_autonomous_database_wallet(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_get_db_system_rest_required_fields(request_type=db_system.GetDbSystemRequest): +def test_generate_autonomous_database_wallet_rest_required_fields( + request_type=oracledatabase.GenerateAutonomousDatabaseWalletRequest, +): transport_class = transports.OracleDatabaseRestTransport request_init = {} request_init["name"] = "" + request_init["password"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -38140,21 +40829,24 @@ def test_get_db_system_rest_required_fields(request_type=db_system.GetDbSystemRe unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).get_db_system._get_unset_required_fields(jsonified_request) + ).generate_autonomous_database_wallet._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present jsonified_request["name"] = "name_value" + jsonified_request["password"] = "password_value" unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).get_db_system._get_unset_required_fields(jsonified_request) + ).generate_autonomous_database_wallet._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone assert "name" in jsonified_request assert jsonified_request["name"] == "name_value" + assert "password" in jsonified_request + assert jsonified_request["password"] == "password_value" client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), @@ -38163,7 +40855,7 @@ def test_get_db_system_rest_required_fields(request_type=db_system.GetDbSystemRe request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = db_system.DbSystem() + return_value = oracledatabase.GenerateAutonomousDatabaseWalletResponse() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -38175,39 +40867,52 @@ def test_get_db_system_rest_required_fields(request_type=db_system.GetDbSystemRe pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "get", + "method": "post", "query_params": pb_request, } + transcode_result["body"] = pb_request transcode.return_value = transcode_result response_value = Response() response_value.status_code = 200 # Convert return value to protobuf type - return_value = db_system.DbSystem.pb(return_value) + return_value = oracledatabase.GenerateAutonomousDatabaseWalletResponse.pb( + return_value + ) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_db_system(request) + response = client.generate_autonomous_database_wallet(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_get_db_system_rest_unset_required_fields(): +def test_generate_autonomous_database_wallet_rest_unset_required_fields(): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.get_db_system._get_unset_required_fields({}) - assert set(unset_fields) == (set(()) & set(("name",))) + unset_fields = ( + transport.generate_autonomous_database_wallet._get_unset_required_fields({}) + ) + assert set(unset_fields) == ( + set(()) + & set( + ( + "name", + "password", + ) + ) + ) -def test_get_db_system_rest_flattened(): +def test_generate_autonomous_database_wallet_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -38216,16 +40921,19 @@ def test_get_db_system_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = db_system.DbSystem() + return_value = oracledatabase.GenerateAutonomousDatabaseWalletResponse() # get arguments that satisfy an http rule for this method sample_request = { - "name": "projects/sample1/locations/sample2/dbSystems/sample3" + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" } # get truthy value for each flattened field mock_args = dict( name="name_value", + type_=autonomous_database.GenerateType.ALL, + is_regional=True, + password="password_value", ) mock_args.update(sample_request) @@ -38233,25 +40941,30 @@ def test_get_db_system_rest_flattened(): response_value = Response() response_value.status_code = 200 # Convert return value to protobuf type - return_value = db_system.DbSystem.pb(return_value) + return_value = oracledatabase.GenerateAutonomousDatabaseWalletResponse.pb( + return_value + ) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_db_system(**mock_args) + client.generate_autonomous_database_wallet(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1/{name=projects/*/locations/*/dbSystems/*}" % client.transport._host, + "%s/v1/{name=projects/*/locations/*/autonomousDatabases/*}:generateWallet" + % client.transport._host, args[1], ) -def test_get_db_system_rest_flattened_error(transport: str = "rest"): +def test_generate_autonomous_database_wallet_rest_flattened_error( + transport: str = "rest", +): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -38260,13 +40973,16 @@ def test_get_db_system_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.get_db_system( - db_system.GetDbSystemRequest(), + client.generate_autonomous_database_wallet( + oracledatabase.GenerateAutonomousDatabaseWalletRequest(), name="name_value", + type_=autonomous_database.GenerateType.ALL, + is_regional=True, + password="password_value", ) -def test_create_db_system_rest_use_cached_wrapped_rpc(): +def test_list_autonomous_db_versions_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -38280,42 +40996,40 @@ def test_create_db_system_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert client._transport.create_db_system in client._transport._wrapped_methods + assert ( + client._transport.list_autonomous_db_versions + in client._transport._wrapped_methods + ) # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.create_db_system] = ( - mock_rpc - ) + client._transport._wrapped_methods[ + client._transport.list_autonomous_db_versions + ] = mock_rpc request = {} - client.create_db_system(request) + client.list_autonomous_db_versions(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - # Operation methods build a cached wrapper on first rpc call - # subsequent calls should use the cached wrapper - wrapper_fn.reset_mock() - - client.create_db_system(request) + client.list_autonomous_db_versions(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_create_db_system_rest_required_fields( - request_type=gco_db_system.CreateDbSystemRequest, +def test_list_autonomous_db_versions_rest_required_fields( + request_type=oracledatabase.ListAutonomousDbVersionsRequest, ): transport_class = transports.OracleDatabaseRestTransport request_init = {} request_init["parent"] = "" - request_init["db_system_id"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -38323,28 +41037,24 @@ def test_create_db_system_rest_required_fields( ) # verify fields with default values are dropped - assert "dbSystemId" not in jsonified_request unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).create_db_system._get_unset_required_fields(jsonified_request) + ).list_autonomous_db_versions._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present - assert "dbSystemId" in jsonified_request - assert jsonified_request["dbSystemId"] == request_init["db_system_id"] jsonified_request["parent"] = "parent_value" - jsonified_request["dbSystemId"] = "db_system_id_value" unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).create_db_system._get_unset_required_fields(jsonified_request) + ).list_autonomous_db_versions._get_unset_required_fields(jsonified_request) # Check that path parameters and body parameters are not mixing in. assert not set(unset_fields) - set( ( - "db_system_id", - "request_id", + "page_size", + "page_token", ) ) jsonified_request.update(unset_fields) @@ -38352,8 +41062,6 @@ def test_create_db_system_rest_required_fields( # verify required fields with non-default values are left alone assert "parent" in jsonified_request assert jsonified_request["parent"] == "parent_value" - assert "dbSystemId" in jsonified_request - assert jsonified_request["dbSystemId"] == "db_system_id_value" client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), @@ -38362,7 +41070,7 @@ def test_create_db_system_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = oracledatabase.ListAutonomousDbVersionsResponse() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -38374,57 +41082,49 @@ def test_create_db_system_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "post", + "method": "get", "query_params": pb_request, } - transcode_result["body"] = pb_request transcode.return_value = transcode_result response_value = Response() response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = oracledatabase.ListAutonomousDbVersionsResponse.pb( + return_value + ) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.create_db_system(request) + response = client.list_autonomous_db_versions(request) - expected_params = [ - ( - "dbSystemId", - "", - ), - ("$alt", "json;enum-encoding=int"), - ] + expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_create_db_system_rest_unset_required_fields(): +def test_list_autonomous_db_versions_rest_unset_required_fields(): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.create_db_system._get_unset_required_fields({}) + unset_fields = transport.list_autonomous_db_versions._get_unset_required_fields({}) assert set(unset_fields) == ( set( ( - "dbSystemId", - "requestId", - ) - ) - & set( - ( - "parent", - "dbSystemId", - "dbSystem", + "pageSize", + "pageToken", ) ) + & set(("parent",)) ) -def test_create_db_system_rest_flattened(): +def test_list_autonomous_db_versions_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -38433,7 +41133,7 @@ def test_create_db_system_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = oracledatabase.ListAutonomousDbVersionsResponse() # get arguments that satisfy an http rule for this method sample_request = {"parent": "projects/sample1/locations/sample2"} @@ -38441,32 +41141,33 @@ def test_create_db_system_rest_flattened(): # get truthy value for each flattened field mock_args = dict( parent="parent_value", - db_system=gco_db_system.DbSystem(name="name_value"), - db_system_id="db_system_id_value", ) mock_args.update(sample_request) # Wrap the value into a proper Response obj response_value = Response() response_value.status_code = 200 + # Convert return value to protobuf type + return_value = oracledatabase.ListAutonomousDbVersionsResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.create_db_system(**mock_args) + client.list_autonomous_db_versions(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*}/dbSystems" % client.transport._host, + "%s/v1/{parent=projects/*/locations/*}/autonomousDbVersions" + % client.transport._host, args[1], ) -def test_create_db_system_rest_flattened_error(transport: str = "rest"): +def test_list_autonomous_db_versions_rest_flattened_error(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -38475,15 +41176,78 @@ def test_create_db_system_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.create_db_system( - gco_db_system.CreateDbSystemRequest(), + client.list_autonomous_db_versions( + oracledatabase.ListAutonomousDbVersionsRequest(), parent="parent_value", - db_system=gco_db_system.DbSystem(name="name_value"), - db_system_id="db_system_id_value", ) -def test_delete_db_system_rest_use_cached_wrapped_rpc(): +def test_list_autonomous_db_versions_rest_pager(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + oracledatabase.ListAutonomousDbVersionsResponse( + autonomous_db_versions=[ + autonomous_db_version.AutonomousDbVersion(), + autonomous_db_version.AutonomousDbVersion(), + autonomous_db_version.AutonomousDbVersion(), + ], + next_page_token="abc", + ), + oracledatabase.ListAutonomousDbVersionsResponse( + autonomous_db_versions=[], + next_page_token="def", + ), + oracledatabase.ListAutonomousDbVersionsResponse( + autonomous_db_versions=[ + autonomous_db_version.AutonomousDbVersion(), + ], + next_page_token="ghi", + ), + oracledatabase.ListAutonomousDbVersionsResponse( + autonomous_db_versions=[ + autonomous_db_version.AutonomousDbVersion(), + autonomous_db_version.AutonomousDbVersion(), + ], + ), + ) + # Two responses for two calls + response = response + response + + # Wrap the values into proper Response objs + response = tuple( + oracledatabase.ListAutonomousDbVersionsResponse.to_json(x) for x in response + ) + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values + + sample_request = {"parent": "projects/sample1/locations/sample2"} + + pager = client.list_autonomous_db_versions(request=sample_request) + + results = list(pager) + assert len(results) == 6 + assert all( + isinstance(i, autonomous_db_version.AutonomousDbVersion) for i in results + ) + + pages = list(client.list_autonomous_db_versions(request=sample_request).pages) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token + + +def test_list_autonomous_database_character_sets_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -38497,41 +41261,40 @@ def test_delete_db_system_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert client._transport.delete_db_system in client._transport._wrapped_methods + assert ( + client._transport.list_autonomous_database_character_sets + in client._transport._wrapped_methods + ) # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.delete_db_system] = ( - mock_rpc - ) + client._transport._wrapped_methods[ + client._transport.list_autonomous_database_character_sets + ] = mock_rpc request = {} - client.delete_db_system(request) + client.list_autonomous_database_character_sets(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - # Operation methods build a cached wrapper on first rpc call - # subsequent calls should use the cached wrapper - wrapper_fn.reset_mock() - - client.delete_db_system(request) + client.list_autonomous_database_character_sets(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_delete_db_system_rest_required_fields( - request_type=db_system.DeleteDbSystemRequest, +def test_list_autonomous_database_character_sets_rest_required_fields( + request_type=oracledatabase.ListAutonomousDatabaseCharacterSetsRequest, ): transport_class = transports.OracleDatabaseRestTransport request_init = {} - request_init["name"] = "" + request_init["parent"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -38542,23 +41305,33 @@ def test_delete_db_system_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).delete_db_system._get_unset_required_fields(jsonified_request) + ).list_autonomous_database_character_sets._get_unset_required_fields( + jsonified_request + ) jsonified_request.update(unset_fields) # verify required fields with default values are now present - jsonified_request["name"] = "name_value" + jsonified_request["parent"] = "parent_value" unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).delete_db_system._get_unset_required_fields(jsonified_request) + ).list_autonomous_database_character_sets._get_unset_required_fields( + jsonified_request + ) # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set(("request_id",)) + assert not set(unset_fields) - set( + ( + "filter", + "page_size", + "page_token", + ) + ) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone - assert "name" in jsonified_request - assert jsonified_request["name"] == "name_value" + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), @@ -38567,7 +41340,7 @@ def test_delete_db_system_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = oracledatabase.ListAutonomousDatabaseCharacterSetsResponse() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -38579,37 +41352,55 @@ def test_delete_db_system_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "delete", + "method": "get", "query_params": pb_request, } transcode.return_value = transcode_result response_value = Response() response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = ( + oracledatabase.ListAutonomousDatabaseCharacterSetsResponse.pb( + return_value + ) + ) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.delete_db_system(request) + response = client.list_autonomous_database_character_sets(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_delete_db_system_rest_unset_required_fields(): +def test_list_autonomous_database_character_sets_rest_unset_required_fields(): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.delete_db_system._get_unset_required_fields({}) - assert set(unset_fields) == (set(("requestId",)) & set(("name",))) - - -def test_delete_db_system_rest_flattened(): - client = OracleDatabaseClient( + unset_fields = ( + transport.list_autonomous_database_character_sets._get_unset_required_fields({}) + ) + assert set(unset_fields) == ( + set( + ( + "filter", + "pageSize", + "pageToken", + ) + ) + & set(("parent",)) + ) + + +def test_list_autonomous_database_character_sets_rest_flattened(): + client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", ) @@ -38617,40 +41408,45 @@ def test_delete_db_system_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = oracledatabase.ListAutonomousDatabaseCharacterSetsResponse() # get arguments that satisfy an http rule for this method - sample_request = { - "name": "projects/sample1/locations/sample2/dbSystems/sample3" - } + sample_request = {"parent": "projects/sample1/locations/sample2"} # get truthy value for each flattened field mock_args = dict( - name="name_value", + parent="parent_value", ) mock_args.update(sample_request) # Wrap the value into a proper Response obj response_value = Response() response_value.status_code = 200 + # Convert return value to protobuf type + return_value = oracledatabase.ListAutonomousDatabaseCharacterSetsResponse.pb( + return_value + ) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.delete_db_system(**mock_args) + client.list_autonomous_database_character_sets(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1/{name=projects/*/locations/*/dbSystems/*}" % client.transport._host, + "%s/v1/{parent=projects/*/locations/*}/autonomousDatabaseCharacterSets" + % client.transport._host, args[1], ) -def test_delete_db_system_rest_flattened_error(transport: str = "rest"): +def test_list_autonomous_database_character_sets_rest_flattened_error( + transport: str = "rest", +): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -38659,13 +41455,84 @@ def test_delete_db_system_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.delete_db_system( - db_system.DeleteDbSystemRequest(), - name="name_value", + client.list_autonomous_database_character_sets( + oracledatabase.ListAutonomousDatabaseCharacterSetsRequest(), + parent="parent_value", ) -def test_list_db_versions_rest_use_cached_wrapped_rpc(): +def test_list_autonomous_database_character_sets_rest_pager(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + oracledatabase.ListAutonomousDatabaseCharacterSetsResponse( + autonomous_database_character_sets=[ + autonomous_database_character_set.AutonomousDatabaseCharacterSet(), + autonomous_database_character_set.AutonomousDatabaseCharacterSet(), + autonomous_database_character_set.AutonomousDatabaseCharacterSet(), + ], + next_page_token="abc", + ), + oracledatabase.ListAutonomousDatabaseCharacterSetsResponse( + autonomous_database_character_sets=[], + next_page_token="def", + ), + oracledatabase.ListAutonomousDatabaseCharacterSetsResponse( + autonomous_database_character_sets=[ + autonomous_database_character_set.AutonomousDatabaseCharacterSet(), + ], + next_page_token="ghi", + ), + oracledatabase.ListAutonomousDatabaseCharacterSetsResponse( + autonomous_database_character_sets=[ + autonomous_database_character_set.AutonomousDatabaseCharacterSet(), + autonomous_database_character_set.AutonomousDatabaseCharacterSet(), + ], + ), + ) + # Two responses for two calls + response = response + response + + # Wrap the values into proper Response objs + response = tuple( + oracledatabase.ListAutonomousDatabaseCharacterSetsResponse.to_json(x) + for x in response + ) + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values + + sample_request = {"parent": "projects/sample1/locations/sample2"} + + pager = client.list_autonomous_database_character_sets(request=sample_request) + + results = list(pager) + assert len(results) == 6 + assert all( + isinstance( + i, autonomous_database_character_set.AutonomousDatabaseCharacterSet + ) + for i in results + ) + + pages = list( + client.list_autonomous_database_character_sets(request=sample_request).pages + ) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token + + +def test_list_autonomous_database_backups_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -38679,32 +41546,35 @@ def test_list_db_versions_rest_use_cached_wrapped_rpc(): wrapper_fn.reset_mock() # Ensure method has been cached - assert client._transport.list_db_versions in client._transport._wrapped_methods + assert ( + client._transport.list_autonomous_database_backups + in client._transport._wrapped_methods + ) # Replace cached wrapped function with mock mock_rpc = mock.Mock() mock_rpc.return_value.name = ( "foo" # operation_request.operation in compute client(s) expect a string. ) - client._transport._wrapped_methods[client._transport.list_db_versions] = ( - mock_rpc - ) + client._transport._wrapped_methods[ + client._transport.list_autonomous_database_backups + ] = mock_rpc request = {} - client.list_db_versions(request) + client.list_autonomous_database_backups(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_db_versions(request) + client.list_autonomous_database_backups(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_list_db_versions_rest_required_fields( - request_type=db_version.ListDbVersionsRequest, +def test_list_autonomous_database_backups_rest_required_fields( + request_type=oracledatabase.ListAutonomousDatabaseBackupsRequest, ): transport_class = transports.OracleDatabaseRestTransport @@ -38720,7 +41590,7 @@ def test_list_db_versions_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_db_versions._get_unset_required_fields(jsonified_request) + ).list_autonomous_database_backups._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present @@ -38729,7 +41599,7 @@ def test_list_db_versions_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_db_versions._get_unset_required_fields(jsonified_request) + ).list_autonomous_database_backups._get_unset_required_fields(jsonified_request) # Check that path parameters and body parameters are not mixing in. assert not set(unset_fields) - set( ( @@ -38751,7 +41621,7 @@ def test_list_db_versions_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = db_version.ListDbVersionsResponse() + return_value = oracledatabase.ListAutonomousDatabaseBackupsResponse() # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -38772,26 +41642,30 @@ def test_list_db_versions_rest_required_fields( response_value.status_code = 200 # Convert return value to protobuf type - return_value = db_version.ListDbVersionsResponse.pb(return_value) + return_value = oracledatabase.ListAutonomousDatabaseBackupsResponse.pb( + return_value + ) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_db_versions(request) + response = client.list_autonomous_database_backups(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_list_db_versions_rest_unset_required_fields(): +def test_list_autonomous_database_backups_rest_unset_required_fields(): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.list_db_versions._get_unset_required_fields({}) + unset_fields = ( + transport.list_autonomous_database_backups._get_unset_required_fields({}) + ) assert set(unset_fields) == ( set( ( @@ -38804,7 +41678,7 @@ def test_list_db_versions_rest_unset_required_fields(): ) -def test_list_db_versions_rest_flattened(): +def test_list_autonomous_database_backups_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -38813,7 +41687,7 @@ def test_list_db_versions_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = db_version.ListDbVersionsResponse() + return_value = oracledatabase.ListAutonomousDatabaseBackupsResponse() # get arguments that satisfy an http rule for this method sample_request = {"parent": "projects/sample1/locations/sample2"} @@ -38828,25 +41702,28 @@ def test_list_db_versions_rest_flattened(): response_value = Response() response_value.status_code = 200 # Convert return value to protobuf type - return_value = db_version.ListDbVersionsResponse.pb(return_value) + return_value = oracledatabase.ListAutonomousDatabaseBackupsResponse.pb( + return_value + ) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_db_versions(**mock_args) + client.list_autonomous_database_backups(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*}/dbVersions" % client.transport._host, + "%s/v1/{parent=projects/*/locations/*}/autonomousDatabaseBackups" + % client.transport._host, args[1], ) -def test_list_db_versions_rest_flattened_error(transport: str = "rest"): +def test_list_autonomous_database_backups_rest_flattened_error(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -38855,13 +41732,13 @@ def test_list_db_versions_rest_flattened_error(transport: str = "rest"): # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.list_db_versions( - db_version.ListDbVersionsRequest(), + client.list_autonomous_database_backups( + oracledatabase.ListAutonomousDatabaseBackupsRequest(), parent="parent_value", ) -def test_list_db_versions_rest_pager(transport: str = "rest"): +def test_list_autonomous_database_backups_rest_pager(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -38873,28 +41750,28 @@ def test_list_db_versions_rest_pager(transport: str = "rest"): # with mock.patch.object(path_template, 'transcode') as transcode: # Set the response as a series of pages response = ( - db_version.ListDbVersionsResponse( - db_versions=[ - db_version.DbVersion(), - db_version.DbVersion(), - db_version.DbVersion(), + oracledatabase.ListAutonomousDatabaseBackupsResponse( + autonomous_database_backups=[ + autonomous_db_backup.AutonomousDatabaseBackup(), + autonomous_db_backup.AutonomousDatabaseBackup(), + autonomous_db_backup.AutonomousDatabaseBackup(), ], next_page_token="abc", ), - db_version.ListDbVersionsResponse( - db_versions=[], + oracledatabase.ListAutonomousDatabaseBackupsResponse( + autonomous_database_backups=[], next_page_token="def", ), - db_version.ListDbVersionsResponse( - db_versions=[ - db_version.DbVersion(), + oracledatabase.ListAutonomousDatabaseBackupsResponse( + autonomous_database_backups=[ + autonomous_db_backup.AutonomousDatabaseBackup(), ], next_page_token="ghi", ), - db_version.ListDbVersionsResponse( - db_versions=[ - db_version.DbVersion(), - db_version.DbVersion(), + oracledatabase.ListAutonomousDatabaseBackupsResponse( + autonomous_database_backups=[ + autonomous_db_backup.AutonomousDatabaseBackup(), + autonomous_db_backup.AutonomousDatabaseBackup(), ], ), ) @@ -38902,7 +41779,10 @@ def test_list_db_versions_rest_pager(transport: str = "rest"): response = response + response # Wrap the values into proper Response objs - response = tuple(db_version.ListDbVersionsResponse.to_json(x) for x in response) + response = tuple( + oracledatabase.ListAutonomousDatabaseBackupsResponse.to_json(x) + for x in response + ) return_values = tuple(Response() for i in response) for return_val, response_val in zip(return_values, response): return_val._content = response_val.encode("UTF-8") @@ -38911,18 +41791,23 @@ def test_list_db_versions_rest_pager(transport: str = "rest"): sample_request = {"parent": "projects/sample1/locations/sample2"} - pager = client.list_db_versions(request=sample_request) + pager = client.list_autonomous_database_backups(request=sample_request) results = list(pager) assert len(results) == 6 - assert all(isinstance(i, db_version.DbVersion) for i in results) + assert all( + isinstance(i, autonomous_db_backup.AutonomousDatabaseBackup) + for i in results + ) - pages = list(client.list_db_versions(request=sample_request).pages) + pages = list( + client.list_autonomous_database_backups(request=sample_request).pages + ) for page_, token in zip(pages, ["abc", "def", "ghi", ""]): assert page_.raw_page.next_page_token == token -def test_list_database_character_sets_rest_use_cached_wrapped_rpc(): +def test_stop_autonomous_database_rest_use_cached_wrapped_rpc(): # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, # instead of constructing them on each call with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: @@ -38937,7 +41822,7 @@ def test_list_database_character_sets_rest_use_cached_wrapped_rpc(): # Ensure method has been cached assert ( - client._transport.list_database_character_sets + client._transport.stop_autonomous_database in client._transport._wrapped_methods ) @@ -38947,29 +41832,33 @@ def test_list_database_character_sets_rest_use_cached_wrapped_rpc(): "foo" # operation_request.operation in compute client(s) expect a string. ) client._transport._wrapped_methods[ - client._transport.list_database_character_sets + client._transport.stop_autonomous_database ] = mock_rpc request = {} - client.list_database_character_sets(request) + client.stop_autonomous_database(request) # Establish that the underlying gRPC stub method was called. assert mock_rpc.call_count == 1 - client.list_database_character_sets(request) + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.stop_autonomous_database(request) # Establish that a new wrapper was not created for this call assert wrapper_fn.call_count == 0 assert mock_rpc.call_count == 2 -def test_list_database_character_sets_rest_required_fields( - request_type=database_character_set.ListDatabaseCharacterSetsRequest, +def test_stop_autonomous_database_rest_required_fields( + request_type=oracledatabase.StopAutonomousDatabaseRequest, ): transport_class = transports.OracleDatabaseRestTransport request_init = {} - request_init["parent"] = "" + request_init["name"] = "" request = request_type(**request_init) pb_request = request_type.pb(request) jsonified_request = json.loads( @@ -38980,29 +41869,21 @@ def test_list_database_character_sets_rest_required_fields( unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_database_character_sets._get_unset_required_fields(jsonified_request) + ).stop_autonomous_database._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with default values are now present - jsonified_request["parent"] = "parent_value" + jsonified_request["name"] = "name_value" unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ).list_database_character_sets._get_unset_required_fields(jsonified_request) - # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set( - ( - "filter", - "page_size", - "page_token", - ) - ) + ).stop_autonomous_database._get_unset_required_fields(jsonified_request) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone - assert "parent" in jsonified_request - assert jsonified_request["parent"] == "parent_value" + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), @@ -39011,7 +41892,7 @@ def test_list_database_character_sets_rest_required_fields( request = request_type(**request_init) # Designate an appropriate value for the returned response. - return_value = database_character_set.ListDatabaseCharacterSetsResponse() + return_value = operations_pb2.Operation(name="operations/spam") # Mock the http request call within the method and fake a response. with mock.patch.object(Session, "request") as req: # We need to mock transcode() because providing default values @@ -39023,50 +41904,37 @@ def test_list_database_character_sets_rest_required_fields( pb_request = request_type.pb(request) transcode_result = { "uri": "v1/sample_method", - "method": "get", + "method": "post", "query_params": pb_request, } + transcode_result["body"] = pb_request transcode.return_value = transcode_result response_value = Response() response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = database_character_set.ListDatabaseCharacterSetsResponse.pb( - return_value - ) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_database_character_sets(request) + response = client.stop_autonomous_database(request) expected_params = [("$alt", "json;enum-encoding=int")] actual_params = req.call_args.kwargs["params"] assert sorted(expected_params) == sorted(actual_params) -def test_list_database_character_sets_rest_unset_required_fields(): +def test_stop_autonomous_database_rest_unset_required_fields(): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials ) - unset_fields = transport.list_database_character_sets._get_unset_required_fields({}) - assert set(unset_fields) == ( - set( - ( - "filter", - "pageSize", - "pageToken", - ) - ) - & set(("parent",)) - ) + unset_fields = transport.stop_autonomous_database._get_unset_required_fields({}) + assert set(unset_fields) == (set(()) & set(("name",))) -def test_list_database_character_sets_rest_flattened(): +def test_stop_autonomous_database_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest", @@ -39075,43 +41943,41 @@ def test_list_database_character_sets_rest_flattened(): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = database_character_set.ListDatabaseCharacterSetsResponse() + return_value = operations_pb2.Operation(name="operations/spam") # get arguments that satisfy an http rule for this method - sample_request = {"parent": "projects/sample1/locations/sample2"} + sample_request = { + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + } # get truthy value for each flattened field mock_args = dict( - parent="parent_value", + name="name_value", ) mock_args.update(sample_request) # Wrap the value into a proper Response obj response_value = Response() response_value.status_code = 200 - # Convert return value to protobuf type - return_value = database_character_set.ListDatabaseCharacterSetsResponse.pb( - return_value - ) json_return_value = json_format.MessageToJson(return_value) response_value._content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_database_character_sets(**mock_args) + client.stop_autonomous_database(**mock_args) # Establish that the underlying call was made with the expected # request object values. assert len(req.mock_calls) == 1 _, args, _ = req.mock_calls[0] assert path_template.validate( - "%s/v1/{parent=projects/*/locations/*}/databaseCharacterSets" + "%s/v1/{name=projects/*/locations/*/autonomousDatabases/*}:stop" % client.transport._host, args[1], ) -def test_list_database_character_sets_rest_flattened_error(transport: str = "rest"): +def test_stop_autonomous_database_rest_flattened_error(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, @@ -39120,3077 +41986,20207 @@ def test_list_database_character_sets_rest_flattened_error(transport: str = "res # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): - client.list_database_character_sets( - database_character_set.ListDatabaseCharacterSetsRequest(), - parent="parent_value", + client.stop_autonomous_database( + oracledatabase.StopAutonomousDatabaseRequest(), + name="name_value", ) -def test_list_database_character_sets_rest_pager(transport: str = "rest"): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, - ) - - # Mock the http request call within the method and fake a response. - with mock.patch.object(Session, "request") as req: - # TODO(kbandes): remove this mock unless there's a good reason for it. - # with mock.patch.object(path_template, 'transcode') as transcode: - # Set the response as a series of pages - response = ( - database_character_set.ListDatabaseCharacterSetsResponse( - database_character_sets=[ - database_character_set.DatabaseCharacterSet(), - database_character_set.DatabaseCharacterSet(), - database_character_set.DatabaseCharacterSet(), - ], - next_page_token="abc", - ), - database_character_set.ListDatabaseCharacterSetsResponse( - database_character_sets=[], - next_page_token="def", - ), - database_character_set.ListDatabaseCharacterSetsResponse( - database_character_sets=[ - database_character_set.DatabaseCharacterSet(), - ], - next_page_token="ghi", - ), - database_character_set.ListDatabaseCharacterSetsResponse( - database_character_sets=[ - database_character_set.DatabaseCharacterSet(), - database_character_set.DatabaseCharacterSet(), - ], - ), - ) - # Two responses for two calls - response = response + response - - # Wrap the values into proper Response objs - response = tuple( - database_character_set.ListDatabaseCharacterSetsResponse.to_json(x) - for x in response +def test_start_autonomous_database_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", ) - return_values = tuple(Response() for i in response) - for return_val, response_val in zip(return_values, response): - return_val._content = response_val.encode("UTF-8") - return_val.status_code = 200 - req.side_effect = return_values - - sample_request = {"parent": "projects/sample1/locations/sample2"} - pager = client.list_database_character_sets(request=sample_request) + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() - results = list(pager) - assert len(results) == 6 - assert all( - isinstance(i, database_character_set.DatabaseCharacterSet) for i in results + # Ensure method has been cached + assert ( + client._transport.start_autonomous_database + in client._transport._wrapped_methods ) - pages = list(client.list_database_character_sets(request=sample_request).pages) - for page_, token in zip(pages, ["abc", "def", "ghi", ""]): - assert page_.raw_page.next_page_token == token - - -def test_credentials_transport_error(): - # It is an error to provide credentials and a transport instance. - transport = transports.OracleDatabaseGrpcTransport( - credentials=ga_credentials.AnonymousCredentials(), - ) - with pytest.raises(ValueError): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport=transport, + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. ) + client._transport._wrapped_methods[ + client._transport.start_autonomous_database + ] = mock_rpc - # It is an error to provide a credentials file and a transport instance. - transport = transports.OracleDatabaseGrpcTransport( - credentials=ga_credentials.AnonymousCredentials(), - ) - with pytest.raises(ValueError): - client = OracleDatabaseClient( - client_options={"credentials_file": "credentials.json"}, - transport=transport, - ) + request = {} + client.start_autonomous_database(request) - # It is an error to provide an api_key and a transport instance. - transport = transports.OracleDatabaseGrpcTransport( - credentials=ga_credentials.AnonymousCredentials(), - ) - options = client_options.ClientOptions() - options.api_key = "api_key" - with pytest.raises(ValueError): - client = OracleDatabaseClient( - client_options=options, - transport=transport, - ) + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 - # It is an error to provide an api_key and a credential. - options = client_options.ClientOptions() - options.api_key = "api_key" - with pytest.raises(ValueError): - client = OracleDatabaseClient( - client_options=options, credentials=ga_credentials.AnonymousCredentials() - ) + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() - # It is an error to provide scopes and a transport instance. - transport = transports.OracleDatabaseGrpcTransport( - credentials=ga_credentials.AnonymousCredentials(), - ) - with pytest.raises(ValueError): - client = OracleDatabaseClient( - client_options={"scopes": ["1", "2"]}, - transport=transport, - ) + client.start_autonomous_database(request) + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 -def test_transport_instance(): - # A client may be instantiated with a custom transport instance. - transport = transports.OracleDatabaseGrpcTransport( - credentials=ga_credentials.AnonymousCredentials(), - ) - client = OracleDatabaseClient(transport=transport) - assert client.transport is transport +def test_start_autonomous_database_rest_required_fields( + request_type=oracledatabase.StartAutonomousDatabaseRequest, +): + transport_class = transports.OracleDatabaseRestTransport -def test_transport_get_channel(): - # A client may be instantiated with a custom transport instance. - transport = transports.OracleDatabaseGrpcTransport( - credentials=ga_credentials.AnonymousCredentials(), + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) ) - channel = transport.grpc_channel - assert channel - transport = transports.OracleDatabaseGrpcAsyncIOTransport( - credentials=ga_credentials.AnonymousCredentials(), - ) - channel = transport.grpc_channel - assert channel + # verify fields with default values are dropped + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).start_autonomous_database._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) -@pytest.mark.parametrize( - "transport_class", - [ - transports.OracleDatabaseGrpcTransport, - transports.OracleDatabaseGrpcAsyncIOTransport, - transports.OracleDatabaseRestTransport, - ], -) -def test_transport_adc(transport_class): - # Test default credentials are used if not provided. - with mock.patch.object(google.auth, "default") as adc: - adc.return_value = (ga_credentials.AnonymousCredentials(), None) - transport_class() - adc.assert_called_once() + # verify required fields with default values are now present + jsonified_request["name"] = "name_value" -def test_transport_kind_grpc(): - transport = OracleDatabaseClient.get_transport_class("grpc")( + unset_fields = transport_class( credentials=ga_credentials.AnonymousCredentials() - ) - assert transport.kind == "grpc" + ).start_autonomous_database._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" -def test_initialize_client_w_grpc(): client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), transport="grpc" + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", ) - assert client is not None + request = request_type(**request_init) + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "post", + "query_params": pb_request, + } + transcode_result["body"] = pb_request + transcode.return_value = transcode_result -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_list_cloud_exadata_infrastructures_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_cloud_exadata_infrastructures), "__call__" - ) as call: - call.return_value = oracledatabase.ListCloudExadataInfrastructuresResponse() - client.list_cloud_exadata_infrastructures(request=None) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.ListCloudExadataInfrastructuresRequest() - assert args[0] == request_msg + response = client.start_autonomous_database(request) + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_get_cloud_exadata_infrastructure_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.get_cloud_exadata_infrastructure), "__call__" - ) as call: - call.return_value = exadata_infra.CloudExadataInfrastructure() - client.get_cloud_exadata_infrastructure(request=None) +def test_start_autonomous_database_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.GetCloudExadataInfrastructureRequest() - assert args[0] == request_msg + unset_fields = transport.start_autonomous_database._get_unset_required_fields({}) + assert set(unset_fields) == (set(()) & set(("name",))) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_create_cloud_exadata_infrastructure_empty_call_grpc(): +def test_start_autonomous_database_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", + transport="rest", ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.create_cloud_exadata_infrastructure), "__call__" - ) as call: - call.return_value = operations_pb2.Operation(name="operations/op") - client.create_cloud_exadata_infrastructure(request=None) + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.CreateCloudExadataInfrastructureRequest() - assert args[0] == request_msg + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + } + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + ) + mock_args.update(sample_request) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_delete_cloud_exadata_infrastructure_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.delete_cloud_exadata_infrastructure), "__call__" - ) as call: - call.return_value = operations_pb2.Operation(name="operations/op") - client.delete_cloud_exadata_infrastructure(request=None) + client.start_autonomous_database(**mock_args) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.DeleteCloudExadataInfrastructureRequest() - assert args[0] == request_msg + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/autonomousDatabases/*}:start" + % client.transport._host, + args[1], + ) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_list_cloud_vm_clusters_empty_call_grpc(): +def test_start_autonomous_database_rest_flattened_error(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", + transport=transport, ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_cloud_vm_clusters), "__call__" - ) as call: - call.return_value = oracledatabase.ListCloudVmClustersResponse() - client.list_cloud_vm_clusters(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.ListCloudVmClustersRequest() - assert args[0] == request_msg - + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.start_autonomous_database( + oracledatabase.StartAutonomousDatabaseRequest(), + name="name_value", + ) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_get_cloud_vm_cluster_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.get_cloud_vm_cluster), "__call__" - ) as call: - call.return_value = vm_cluster.CloudVmCluster() - client.get_cloud_vm_cluster(request=None) +def test_restart_autonomous_database_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.GetCloudVmClusterRequest() - assert args[0] == request_msg + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + # Ensure method has been cached + assert ( + client._transport.restart_autonomous_database + in client._transport._wrapped_methods + ) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_create_cloud_vm_cluster_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.restart_autonomous_database + ] = mock_rpc - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.create_cloud_vm_cluster), "__call__" - ) as call: - call.return_value = operations_pb2.Operation(name="operations/op") - client.create_cloud_vm_cluster(request=None) + request = {} + client.restart_autonomous_database(request) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.CreateCloudVmClusterRequest() - assert args[0] == request_msg + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_delete_cloud_vm_cluster_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) + client.restart_autonomous_database(request) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.delete_cloud_vm_cluster), "__call__" - ) as call: - call.return_value = operations_pb2.Operation(name="operations/op") - client.delete_cloud_vm_cluster(request=None) + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.DeleteCloudVmClusterRequest() - assert args[0] == request_msg +def test_restart_autonomous_database_rest_required_fields( + request_type=oracledatabase.RestartAutonomousDatabaseRequest, +): + transport_class = transports.OracleDatabaseRestTransport -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_list_entitlements_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_entitlements), "__call__" - ) as call: - call.return_value = oracledatabase.ListEntitlementsResponse() - client.list_entitlements(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.ListEntitlementsRequest() - assert args[0] == request_msg + # verify fields with default values are dropped + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).restart_autonomous_database._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_list_db_servers_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) + # verify required fields with default values are now present - # Mock the actual call, and fake the request. - with mock.patch.object(type(client.transport.list_db_servers), "__call__") as call: - call.return_value = oracledatabase.ListDbServersResponse() - client.list_db_servers(request=None) + jsonified_request["name"] = "name_value" - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.ListDbServersRequest() - assert args[0] == request_msg + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).restart_autonomous_database._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_list_db_nodes_empty_call_grpc(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", + transport="rest", ) + request = request_type(**request_init) - # Mock the actual call, and fake the request. - with mock.patch.object(type(client.transport.list_db_nodes), "__call__") as call: - call.return_value = oracledatabase.ListDbNodesResponse() - client.list_db_nodes(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.ListDbNodesRequest() - assert args[0] == request_msg + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "post", + "query_params": pb_request, + } + transcode_result["body"] = pb_request + transcode.return_value = transcode_result + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_list_gi_versions_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - # Mock the actual call, and fake the request. - with mock.patch.object(type(client.transport.list_gi_versions), "__call__") as call: - call.return_value = oracledatabase.ListGiVersionsResponse() - client.list_gi_versions(request=None) + response = client.restart_autonomous_database(request) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.ListGiVersionsRequest() - assert args[0] == request_msg + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_list_minor_versions_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", +def test_restart_autonomous_database_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_minor_versions), "__call__" - ) as call: - call.return_value = minor_version.ListMinorVersionsResponse() - client.list_minor_versions(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = minor_version.ListMinorVersionsRequest() - assert args[0] == request_msg + unset_fields = transport.restart_autonomous_database._get_unset_required_fields({}) + assert set(unset_fields) == (set(()) & set(("name",))) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_list_db_system_shapes_empty_call_grpc(): +def test_restart_autonomous_database_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", + transport="rest", ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_db_system_shapes), "__call__" - ) as call: - call.return_value = oracledatabase.ListDbSystemShapesResponse() - client.list_db_system_shapes(request=None) + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.ListDbSystemShapesRequest() - assert args[0] == request_msg + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + } + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + ) + mock_args.update(sample_request) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_list_autonomous_databases_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_autonomous_databases), "__call__" - ) as call: - call.return_value = oracledatabase.ListAutonomousDatabasesResponse() - client.list_autonomous_databases(request=None) + client.restart_autonomous_database(**mock_args) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.ListAutonomousDatabasesRequest() - assert args[0] == request_msg + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/autonomousDatabases/*}:restart" + % client.transport._host, + args[1], + ) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_get_autonomous_database_empty_call_grpc(): +def test_restart_autonomous_database_rest_flattened_error(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", + transport=transport, ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.get_autonomous_database), "__call__" - ) as call: - call.return_value = autonomous_database.AutonomousDatabase() - client.get_autonomous_database(request=None) + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.restart_autonomous_database( + oracledatabase.RestartAutonomousDatabaseRequest(), + name="name_value", + ) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.GetAutonomousDatabaseRequest() - assert args[0] == request_msg +def test_switchover_autonomous_database_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_create_autonomous_database_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.create_autonomous_database), "__call__" - ) as call: - call.return_value = operations_pb2.Operation(name="operations/op") - client.create_autonomous_database(request=None) + # Ensure method has been cached + assert ( + client._transport.switchover_autonomous_database + in client._transport._wrapped_methods + ) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.CreateAutonomousDatabaseRequest() - assert args[0] == request_msg + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.switchover_autonomous_database + ] = mock_rpc + request = {} + client.switchover_autonomous_database(request) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_update_autonomous_database_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.update_autonomous_database), "__call__" - ) as call: - call.return_value = operations_pb2.Operation(name="operations/op") - client.update_autonomous_database(request=None) + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.UpdateAutonomousDatabaseRequest() - assert args[0] == request_msg + client.switchover_autonomous_database(request) + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_delete_autonomous_database_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.delete_autonomous_database), "__call__" - ) as call: - call.return_value = operations_pb2.Operation(name="operations/op") - client.delete_autonomous_database(request=None) +def test_switchover_autonomous_database_rest_required_fields( + request_type=oracledatabase.SwitchoverAutonomousDatabaseRequest, +): + transport_class = transports.OracleDatabaseRestTransport - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.DeleteAutonomousDatabaseRequest() - assert args[0] == request_msg + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + # verify fields with default values are dropped -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_restore_autonomous_database_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).switchover_autonomous_database._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.restore_autonomous_database), "__call__" - ) as call: - call.return_value = operations_pb2.Operation(name="operations/op") - client.restore_autonomous_database(request=None) + # verify required fields with default values are now present - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.RestoreAutonomousDatabaseRequest() - assert args[0] == request_msg + jsonified_request["name"] = "name_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).switchover_autonomous_database._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_generate_autonomous_database_wallet_empty_call_grpc(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", + transport="rest", ) + request = request_type(**request_init) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.generate_autonomous_database_wallet), "__call__" - ) as call: - call.return_value = oracledatabase.GenerateAutonomousDatabaseWalletResponse() - client.generate_autonomous_database_wallet(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.GenerateAutonomousDatabaseWalletRequest() - assert args[0] == request_msg + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "post", + "query_params": pb_request, + } + transcode_result["body"] = pb_request + transcode.return_value = transcode_result + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_list_autonomous_db_versions_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_autonomous_db_versions), "__call__" - ) as call: - call.return_value = oracledatabase.ListAutonomousDbVersionsResponse() - client.list_autonomous_db_versions(request=None) + response = client.switchover_autonomous_database(request) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.ListAutonomousDbVersionsRequest() - assert args[0] == request_msg + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_list_autonomous_database_character_sets_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", +def test_switchover_autonomous_database_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_autonomous_database_character_sets), "__call__" - ) as call: - call.return_value = oracledatabase.ListAutonomousDatabaseCharacterSetsResponse() - client.list_autonomous_database_character_sets(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.ListAutonomousDatabaseCharacterSetsRequest() - assert args[0] == request_msg + unset_fields = transport.switchover_autonomous_database._get_unset_required_fields( + {} + ) + assert set(unset_fields) == (set(()) & set(("name",))) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_list_autonomous_database_backups_empty_call_grpc(): +def test_switchover_autonomous_database_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", + transport="rest", ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_autonomous_database_backups), "__call__" - ) as call: - call.return_value = oracledatabase.ListAutonomousDatabaseBackupsResponse() - client.list_autonomous_database_backups(request=None) + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.ListAutonomousDatabaseBackupsRequest() - assert args[0] == request_msg + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + } + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + peer_autonomous_database="peer_autonomous_database_value", + ) + mock_args.update(sample_request) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_stop_autonomous_database_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.stop_autonomous_database), "__call__" - ) as call: - call.return_value = operations_pb2.Operation(name="operations/op") - client.stop_autonomous_database(request=None) + client.switchover_autonomous_database(**mock_args) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.StopAutonomousDatabaseRequest() - assert args[0] == request_msg + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/autonomousDatabases/*}:switchover" + % client.transport._host, + args[1], + ) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_start_autonomous_database_empty_call_grpc(): +def test_switchover_autonomous_database_rest_flattened_error(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", + transport=transport, ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.start_autonomous_database), "__call__" - ) as call: - call.return_value = operations_pb2.Operation(name="operations/op") - client.start_autonomous_database(request=None) + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.switchover_autonomous_database( + oracledatabase.SwitchoverAutonomousDatabaseRequest(), + name="name_value", + peer_autonomous_database="peer_autonomous_database_value", + ) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.StartAutonomousDatabaseRequest() - assert args[0] == request_msg +def test_failover_autonomous_database_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_restart_autonomous_database_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.restart_autonomous_database), "__call__" - ) as call: - call.return_value = operations_pb2.Operation(name="operations/op") - client.restart_autonomous_database(request=None) + # Ensure method has been cached + assert ( + client._transport.failover_autonomous_database + in client._transport._wrapped_methods + ) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.RestartAutonomousDatabaseRequest() - assert args[0] == request_msg + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.failover_autonomous_database + ] = mock_rpc + request = {} + client.failover_autonomous_database(request) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_switchover_autonomous_database_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.switchover_autonomous_database), "__call__" - ) as call: - call.return_value = operations_pb2.Operation(name="operations/op") - client.switchover_autonomous_database(request=None) + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.SwitchoverAutonomousDatabaseRequest() - assert args[0] == request_msg + client.failover_autonomous_database(request) + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_failover_autonomous_database_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.failover_autonomous_database), "__call__" - ) as call: - call.return_value = operations_pb2.Operation(name="operations/op") - client.failover_autonomous_database(request=None) +def test_failover_autonomous_database_rest_required_fields( + request_type=oracledatabase.FailoverAutonomousDatabaseRequest, +): + transport_class = transports.OracleDatabaseRestTransport - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.FailoverAutonomousDatabaseRequest() - assert args[0] == request_msg + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + # verify fields with default values are dropped -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_list_odb_networks_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).failover_autonomous_database._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_odb_networks), "__call__" - ) as call: - call.return_value = odb_network.ListOdbNetworksResponse() - client.list_odb_networks(request=None) + # verify required fields with default values are now present - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = odb_network.ListOdbNetworksRequest() - assert args[0] == request_msg + jsonified_request["name"] = "name_value" + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).failover_autonomous_database._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_get_odb_network_empty_call_grpc(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", + transport="rest", ) + request = request_type(**request_init) - # Mock the actual call, and fake the request. - with mock.patch.object(type(client.transport.get_odb_network), "__call__") as call: - call.return_value = odb_network.OdbNetwork() - client.get_odb_network(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = odb_network.GetOdbNetworkRequest() - assert args[0] == request_msg + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "post", + "query_params": pb_request, + } + transcode_result["body"] = pb_request + transcode.return_value = transcode_result + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_create_odb_network_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.create_odb_network), "__call__" - ) as call: - call.return_value = operations_pb2.Operation(name="operations/op") - client.create_odb_network(request=None) + response = client.failover_autonomous_database(request) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = gco_odb_network.CreateOdbNetworkRequest() - assert args[0] == request_msg + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_delete_odb_network_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", +def test_failover_autonomous_database_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.delete_odb_network), "__call__" - ) as call: - call.return_value = operations_pb2.Operation(name="operations/op") - client.delete_odb_network(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = odb_network.DeleteOdbNetworkRequest() - assert args[0] == request_msg + unset_fields = transport.failover_autonomous_database._get_unset_required_fields({}) + assert set(unset_fields) == (set(()) & set(("name",))) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_list_odb_subnets_empty_call_grpc(): +def test_failover_autonomous_database_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", + transport="rest", ) - # Mock the actual call, and fake the request. - with mock.patch.object(type(client.transport.list_odb_subnets), "__call__") as call: - call.return_value = odb_subnet.ListOdbSubnetsResponse() - client.list_odb_subnets(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = odb_subnet.ListOdbSubnetsRequest() - assert args[0] == request_msg - - -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_get_odb_subnet_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) - - # Mock the actual call, and fake the request. - with mock.patch.object(type(client.transport.get_odb_subnet), "__call__") as call: - call.return_value = odb_subnet.OdbSubnet() - client.get_odb_subnet(request=None) + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = odb_subnet.GetOdbSubnetRequest() - assert args[0] == request_msg + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + } + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + peer_autonomous_database="peer_autonomous_database_value", + ) + mock_args.update(sample_request) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_create_odb_subnet_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.create_odb_subnet), "__call__" - ) as call: - call.return_value = operations_pb2.Operation(name="operations/op") - client.create_odb_subnet(request=None) + client.failover_autonomous_database(**mock_args) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = gco_odb_subnet.CreateOdbSubnetRequest() - assert args[0] == request_msg + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/autonomousDatabases/*}:failover" + % client.transport._host, + args[1], + ) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_delete_odb_subnet_empty_call_grpc(): +def test_failover_autonomous_database_rest_flattened_error(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", + transport=transport, ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.delete_odb_subnet), "__call__" - ) as call: - call.return_value = operations_pb2.Operation(name="operations/op") - client.delete_odb_subnet(request=None) + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.failover_autonomous_database( + oracledatabase.FailoverAutonomousDatabaseRequest(), + name="name_value", + peer_autonomous_database="peer_autonomous_database_value", + ) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = odb_subnet.DeleteOdbSubnetRequest() - assert args[0] == request_msg +def test_list_odb_networks_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_list_exadb_vm_clusters_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_exadb_vm_clusters), "__call__" - ) as call: - call.return_value = oracledatabase.ListExadbVmClustersResponse() - client.list_exadb_vm_clusters(request=None) + # Ensure method has been cached + assert client._transport.list_odb_networks in client._transport._wrapped_methods - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.ListExadbVmClustersRequest() - assert args[0] == request_msg + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[client._transport.list_odb_networks] = ( + mock_rpc + ) + request = {} + client.list_odb_networks(request) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_get_exadb_vm_cluster_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.get_exadb_vm_cluster), "__call__" - ) as call: - call.return_value = exadb_vm_cluster.ExadbVmCluster() - client.get_exadb_vm_cluster(request=None) + client.list_odb_networks(request) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.GetExadbVmClusterRequest() - assert args[0] == request_msg + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_create_exadb_vm_cluster_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) +def test_list_odb_networks_rest_required_fields( + request_type=odb_network.ListOdbNetworksRequest, +): + transport_class = transports.OracleDatabaseRestTransport - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.create_exadb_vm_cluster), "__call__" - ) as call: - call.return_value = operations_pb2.Operation(name="operations/op") - client.create_exadb_vm_cluster(request=None) + request_init = {} + request_init["parent"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.CreateExadbVmClusterRequest() - assert args[0] == request_msg + # verify fields with default values are dropped + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_odb_networks._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_delete_exadb_vm_cluster_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) + # verify required fields with default values are now present - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.delete_exadb_vm_cluster), "__call__" - ) as call: - call.return_value = operations_pb2.Operation(name="operations/op") - client.delete_exadb_vm_cluster(request=None) + jsonified_request["parent"] = "parent_value" - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.DeleteExadbVmClusterRequest() - assert args[0] == request_msg + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_odb_networks._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "filter", + "order_by", + "page_size", + "page_token", + ) + ) + jsonified_request.update(unset_fields) + # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_update_exadb_vm_cluster_empty_call_grpc(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", + transport="rest", ) + request = request_type(**request_init) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.update_exadb_vm_cluster), "__call__" - ) as call: - call.return_value = operations_pb2.Operation(name="operations/op") - client.update_exadb_vm_cluster(request=None) + # Designate an appropriate value for the returned response. + return_value = odb_network.ListOdbNetworksResponse() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.UpdateExadbVmClusterRequest() - assert args[0] == request_msg + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = odb_network.ListOdbNetworksResponse.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_remove_virtual_machine_exadb_vm_cluster_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.remove_virtual_machine_exadb_vm_cluster), "__call__" - ) as call: - call.return_value = operations_pb2.Operation(name="operations/op") - client.remove_virtual_machine_exadb_vm_cluster(request=None) + response = client.list_odb_networks(request) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.RemoveVirtualMachineExadbVmClusterRequest() - assert args[0] == request_msg + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_list_exascale_db_storage_vaults_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", +def test_list_odb_networks_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_exascale_db_storage_vaults), "__call__" - ) as call: - call.return_value = ( - exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse() + unset_fields = transport.list_odb_networks._get_unset_required_fields({}) + assert set(unset_fields) == ( + set( + ( + "filter", + "orderBy", + "pageSize", + "pageToken", + ) ) - client.list_exascale_db_storage_vaults(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest() - assert args[0] == request_msg + & set(("parent",)) + ) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_get_exascale_db_storage_vault_empty_call_grpc(): +def test_list_odb_networks_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", + transport="rest", ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.get_exascale_db_storage_vault), "__call__" - ) as call: - call.return_value = exascale_db_storage_vault.ExascaleDbStorageVault() - client.get_exascale_db_storage_vault(request=None) + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = odb_network.ListOdbNetworksResponse() - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = exascale_db_storage_vault.GetExascaleDbStorageVaultRequest() - assert args[0] == request_msg + # get arguments that satisfy an http rule for this method + sample_request = {"parent": "projects/sample1/locations/sample2"} + # get truthy value for each flattened field + mock_args = dict( + parent="parent_value", + ) + mock_args.update(sample_request) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_create_exascale_db_storage_vault_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = odb_network.ListOdbNetworksResponse.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.create_exascale_db_storage_vault), "__call__" - ) as call: - call.return_value = operations_pb2.Operation(name="operations/op") - client.create_exascale_db_storage_vault(request=None) + client.list_odb_networks(**mock_args) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = ( - gco_exascale_db_storage_vault.CreateExascaleDbStorageVaultRequest() + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{parent=projects/*/locations/*}/odbNetworks" + % client.transport._host, + args[1], ) - assert args[0] == request_msg -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_delete_exascale_db_storage_vault_empty_call_grpc(): +def test_list_odb_networks_rest_flattened_error(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", + transport=transport, ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.delete_exascale_db_storage_vault), "__call__" - ) as call: - call.return_value = operations_pb2.Operation(name="operations/op") - client.delete_exascale_db_storage_vault(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = exascale_db_storage_vault.DeleteExascaleDbStorageVaultRequest() - assert args[0] == request_msg + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.list_odb_networks( + odb_network.ListOdbNetworksRequest(), + parent="parent_value", + ) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_list_db_system_initial_storage_sizes_empty_call_grpc(): +def test_list_odb_networks_rest_pager(transport: str = "rest"): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", + transport=transport, ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_db_system_initial_storage_sizes), "__call__" - ) as call: - call.return_value = ( - db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + odb_network.ListOdbNetworksResponse( + odb_networks=[ + odb_network.OdbNetwork(), + odb_network.OdbNetwork(), + odb_network.OdbNetwork(), + ], + next_page_token="abc", + ), + odb_network.ListOdbNetworksResponse( + odb_networks=[], + next_page_token="def", + ), + odb_network.ListOdbNetworksResponse( + odb_networks=[ + odb_network.OdbNetwork(), + ], + next_page_token="ghi", + ), + odb_network.ListOdbNetworksResponse( + odb_networks=[ + odb_network.OdbNetwork(), + odb_network.OdbNetwork(), + ], + ), ) - client.list_db_system_initial_storage_sizes(request=None) + # Two responses for two calls + response = response + response - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = ( - db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest() + # Wrap the values into proper Response objs + response = tuple( + odb_network.ListOdbNetworksResponse.to_json(x) for x in response ) - assert args[0] == request_msg - + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_list_databases_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) + sample_request = {"parent": "projects/sample1/locations/sample2"} - # Mock the actual call, and fake the request. - with mock.patch.object(type(client.transport.list_databases), "__call__") as call: - call.return_value = database.ListDatabasesResponse() - client.list_databases(request=None) + pager = client.list_odb_networks(request=sample_request) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = database.ListDatabasesRequest() - assert args[0] == request_msg + results = list(pager) + assert len(results) == 6 + assert all(isinstance(i, odb_network.OdbNetwork) for i in results) + pages = list(client.list_odb_networks(request=sample_request).pages) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_get_database_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) - # Mock the actual call, and fake the request. - with mock.patch.object(type(client.transport.get_database), "__call__") as call: - call.return_value = database.Database() - client.get_database(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = database.GetDatabaseRequest() - assert args[0] == request_msg +def test_get_odb_network_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_list_pluggable_databases_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) + # Ensure method has been cached + assert client._transport.get_odb_network in client._transport._wrapped_methods - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_pluggable_databases), "__call__" - ) as call: - call.return_value = pluggable_database.ListPluggableDatabasesResponse() - client.list_pluggable_databases(request=None) + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[client._transport.get_odb_network] = mock_rpc - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = pluggable_database.ListPluggableDatabasesRequest() - assert args[0] == request_msg + request = {} + client.get_odb_network(request) + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_get_pluggable_database_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) + client.get_odb_network(request) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.get_pluggable_database), "__call__" - ) as call: - call.return_value = pluggable_database.PluggableDatabase() - client.get_pluggable_database(request=None) + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = pluggable_database.GetPluggableDatabaseRequest() - assert args[0] == request_msg +def test_get_odb_network_rest_required_fields( + request_type=odb_network.GetOdbNetworkRequest, +): + transport_class = transports.OracleDatabaseRestTransport -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_list_db_systems_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) ) - # Mock the actual call, and fake the request. - with mock.patch.object(type(client.transport.list_db_systems), "__call__") as call: - call.return_value = db_system.ListDbSystemsResponse() - client.list_db_systems(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = db_system.ListDbSystemsRequest() - assert args[0] == request_msg + # verify fields with default values are dropped + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_odb_network._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_get_db_system_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) + # verify required fields with default values are now present - # Mock the actual call, and fake the request. - with mock.patch.object(type(client.transport.get_db_system), "__call__") as call: - call.return_value = db_system.DbSystem() - client.get_db_system(request=None) + jsonified_request["name"] = "name_value" - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = db_system.GetDbSystemRequest() - assert args[0] == request_msg + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_odb_network._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_create_db_system_empty_call_grpc(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", + transport="rest", ) + request = request_type(**request_init) - # Mock the actual call, and fake the request. - with mock.patch.object(type(client.transport.create_db_system), "__call__") as call: - call.return_value = operations_pb2.Operation(name="operations/op") - client.create_db_system(request=None) + # Designate an appropriate value for the returned response. + return_value = odb_network.OdbNetwork() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = gco_db_system.CreateDbSystemRequest() - assert args[0] == request_msg + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = odb_network.OdbNetwork.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_delete_db_system_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", - ) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - # Mock the actual call, and fake the request. - with mock.patch.object(type(client.transport.delete_db_system), "__call__") as call: - call.return_value = operations_pb2.Operation(name="operations/op") - client.delete_db_system(request=None) + response = client.get_odb_network(request) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = db_system.DeleteDbSystemRequest() - assert args[0] == request_msg + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_list_db_versions_empty_call_grpc(): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", +def test_get_odb_network_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials ) - # Mock the actual call, and fake the request. - with mock.patch.object(type(client.transport.list_db_versions), "__call__") as call: - call.return_value = db_version.ListDbVersionsResponse() - client.list_db_versions(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = db_version.ListDbVersionsRequest() - assert args[0] == request_msg + unset_fields = transport.get_odb_network._get_unset_required_fields({}) + assert set(unset_fields) == (set(()) & set(("name",))) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -def test_list_database_character_sets_empty_call_grpc(): +def test_get_odb_network_rest_flattened(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), - transport="grpc", + transport="rest", ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_database_character_sets), "__call__" - ) as call: - call.return_value = database_character_set.ListDatabaseCharacterSetsResponse() - client.list_database_character_sets(request=None) + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = odb_network.OdbNetwork() - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = database_character_set.ListDatabaseCharacterSetsRequest() - assert args[0] == request_msg + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/odbNetworks/sample3" + } + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + ) + mock_args.update(sample_request) -def test_transport_kind_grpc_asyncio(): - transport = OracleDatabaseAsyncClient.get_transport_class("grpc_asyncio")( - credentials=async_anonymous_credentials() - ) - assert transport.kind == "grpc_asyncio" + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = odb_network.OdbNetwork.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.get_odb_network(**mock_args) -def test_initialize_client_w_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), transport="grpc_asyncio" - ) - assert client is not None + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/odbNetworks/*}" + % client.transport._host, + args[1], + ) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_list_cloud_exadata_infrastructures_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", +def test_get_odb_network_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_cloud_exadata_infrastructures), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - oracledatabase.ListCloudExadataInfrastructuresResponse( - next_page_token="next_page_token_value", - ) + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.get_odb_network( + odb_network.GetOdbNetworkRequest(), + name="name_value", ) - await client.list_cloud_exadata_infrastructures(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.ListCloudExadataInfrastructuresRequest() - assert args[0] == request_msg -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_get_cloud_exadata_infrastructure_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) - - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.get_cloud_exadata_infrastructure), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - exadata_infra.CloudExadataInfrastructure( - name="name_value", - display_name="display_name_value", - gcp_oracle_zone="gcp_oracle_zone_value", - entitlement_id="entitlement_id_value", - ) +def test_create_odb_network_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", ) - await client.get_cloud_exadata_infrastructure(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.GetCloudExadataInfrastructureRequest() - assert args[0] == request_msg + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_create_cloud_exadata_infrastructure_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) + # Ensure method has been cached + assert ( + client._transport.create_odb_network in client._transport._wrapped_methods + ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.create_cloud_exadata_infrastructure), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - operations_pb2.Operation(name="operations/spam") + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[client._transport.create_odb_network] = ( + mock_rpc ) - await client.create_cloud_exadata_infrastructure(request=None) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.CreateCloudExadataInfrastructureRequest() - assert args[0] == request_msg + request = {} + client.create_odb_network(request) + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_delete_cloud_exadata_infrastructure_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.delete_cloud_exadata_infrastructure), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - operations_pb2.Operation(name="operations/spam") - ) - await client.delete_cloud_exadata_infrastructure(request=None) + client.create_odb_network(request) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.DeleteCloudExadataInfrastructureRequest() - assert args[0] == request_msg + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_list_cloud_vm_clusters_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", +def test_create_odb_network_rest_required_fields( + request_type=gco_odb_network.CreateOdbNetworkRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["parent"] = "" + request_init["odb_network_id"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_cloud_vm_clusters), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - oracledatabase.ListCloudVmClustersResponse( - next_page_token="next_page_token_value", - ) - ) - await client.list_cloud_vm_clusters(request=None) + # verify fields with default values are dropped + assert "odbNetworkId" not in jsonified_request - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.ListCloudVmClustersRequest() - assert args[0] == request_msg + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).create_odb_network._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + # verify required fields with default values are now present + assert "odbNetworkId" in jsonified_request + assert jsonified_request["odbNetworkId"] == request_init["odb_network_id"] -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_get_cloud_vm_cluster_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) + jsonified_request["parent"] = "parent_value" + jsonified_request["odbNetworkId"] = "odb_network_id_value" - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.get_cloud_vm_cluster), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - vm_cluster.CloudVmCluster( - name="name_value", - exadata_infrastructure="exadata_infrastructure_value", - display_name="display_name_value", - cidr="cidr_value", - backup_subnet_cidr="backup_subnet_cidr_value", - network="network_value", - gcp_oracle_zone="gcp_oracle_zone_value", - odb_network="odb_network_value", - odb_subnet="odb_subnet_value", - backup_odb_subnet="backup_odb_subnet_value", - ) + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).create_odb_network._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "odb_network_id", + "request_id", ) - await client.get_cloud_vm_cluster(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.GetCloudVmClusterRequest() - assert args[0] == request_msg + ) + jsonified_request.update(unset_fields) + # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + assert "odbNetworkId" in jsonified_request + assert jsonified_request["odbNetworkId"] == "odb_network_id_value" -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_create_cloud_vm_cluster_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", ) + request = request_type(**request_init) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.create_cloud_vm_cluster), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - operations_pb2.Operation(name="operations/spam") - ) - await client.create_cloud_vm_cluster(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.CreateCloudVmClusterRequest() - assert args[0] == request_msg + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "post", + "query_params": pb_request, + } + transcode_result["body"] = pb_request + transcode.return_value = transcode_result + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_delete_cloud_vm_cluster_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.delete_cloud_vm_cluster), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - operations_pb2.Operation(name="operations/spam") - ) - await client.delete_cloud_vm_cluster(request=None) + response = client.create_odb_network(request) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.DeleteCloudVmClusterRequest() - assert args[0] == request_msg + expected_params = [ + ( + "odbNetworkId", + "", + ), + ("$alt", "json;enum-encoding=int"), + ] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_list_entitlements_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", +def test_create_odb_network_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_entitlements), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - oracledatabase.ListEntitlementsResponse( - next_page_token="next_page_token_value", + unset_fields = transport.create_odb_network._get_unset_required_fields({}) + assert set(unset_fields) == ( + set( + ( + "odbNetworkId", + "requestId", ) ) - await client.list_entitlements(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.ListEntitlementsRequest() - assert args[0] == request_msg - - -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_list_db_servers_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) - - # Mock the actual call, and fake the request. - with mock.patch.object(type(client.transport.list_db_servers), "__call__") as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - oracledatabase.ListDbServersResponse( - next_page_token="next_page_token_value", + & set( + ( + "parent", + "odbNetworkId", + "odbNetwork", ) ) - await client.list_db_servers(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.ListDbServersRequest() - assert args[0] == request_msg + ) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_list_db_nodes_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", +def test_create_odb_network_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", ) - # Mock the actual call, and fake the request. - with mock.patch.object(type(client.transport.list_db_nodes), "__call__") as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - oracledatabase.ListDbNodesResponse( - next_page_token="next_page_token_value", - ) - ) - await client.list_db_nodes(request=None) + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.ListDbNodesRequest() - assert args[0] == request_msg + # get arguments that satisfy an http rule for this method + sample_request = {"parent": "projects/sample1/locations/sample2"} + # get truthy value for each flattened field + mock_args = dict( + parent="parent_value", + odb_network=gco_odb_network.OdbNetwork(name="name_value"), + odb_network_id="odb_network_id_value", + ) + mock_args.update(sample_request) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_list_gi_versions_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - # Mock the actual call, and fake the request. - with mock.patch.object(type(client.transport.list_gi_versions), "__call__") as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - oracledatabase.ListGiVersionsResponse( - next_page_token="next_page_token_value", - ) - ) - await client.list_gi_versions(request=None) + client.create_odb_network(**mock_args) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.ListGiVersionsRequest() - assert args[0] == request_msg + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{parent=projects/*/locations/*}/odbNetworks" + % client.transport._host, + args[1], + ) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_list_minor_versions_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", +def test_create_odb_network_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_minor_versions), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - minor_version.ListMinorVersionsResponse( - next_page_token="next_page_token_value", - ) + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.create_odb_network( + gco_odb_network.CreateOdbNetworkRequest(), + parent="parent_value", + odb_network=gco_odb_network.OdbNetwork(name="name_value"), + odb_network_id="odb_network_id_value", ) - await client.list_minor_versions(request=None) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = minor_version.ListMinorVersionsRequest() - assert args[0] == request_msg +def test_delete_odb_network_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_list_db_system_shapes_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_db_system_shapes), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - oracledatabase.ListDbSystemShapesResponse( - next_page_token="next_page_token_value", - ) + # Ensure method has been cached + assert ( + client._transport.delete_odb_network in client._transport._wrapped_methods ) - await client.list_db_system_shapes(request=None) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.ListDbSystemShapesRequest() - assert args[0] == request_msg + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[client._transport.delete_odb_network] = ( + mock_rpc + ) + request = {} + client.delete_odb_network(request) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_list_autonomous_databases_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_autonomous_databases), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - oracledatabase.ListAutonomousDatabasesResponse( - next_page_token="next_page_token_value", - ) - ) - await client.list_autonomous_databases(request=None) + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.ListAutonomousDatabasesRequest() - assert args[0] == request_msg + client.delete_odb_network(request) + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_get_autonomous_database_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.get_autonomous_database), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - autonomous_database.AutonomousDatabase( - name="name_value", - database="database_value", - display_name="display_name_value", - entitlement_id="entitlement_id_value", - admin_password="admin_password_value", - network="network_value", - cidr="cidr_value", - odb_network="odb_network_value", - odb_subnet="odb_subnet_value", - peer_autonomous_databases=["peer_autonomous_databases_value"], - disaster_recovery_supported_locations=[ - "disaster_recovery_supported_locations_value" - ], - ) - ) - await client.get_autonomous_database(request=None) +def test_delete_odb_network_rest_required_fields( + request_type=odb_network.DeleteOdbNetworkRequest, +): + transport_class = transports.OracleDatabaseRestTransport - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.GetAutonomousDatabaseRequest() - assert args[0] == request_msg + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + # verify fields with default values are dropped -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_create_autonomous_database_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).delete_odb_network._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.create_autonomous_database), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - operations_pb2.Operation(name="operations/spam") - ) - await client.create_autonomous_database(request=None) + # verify required fields with default values are now present - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.CreateAutonomousDatabaseRequest() - assert args[0] == request_msg + jsonified_request["name"] = "name_value" + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).delete_odb_network._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set(("request_id",)) + jsonified_request.update(unset_fields) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_update_autonomous_database_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.update_autonomous_database), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - operations_pb2.Operation(name="operations/spam") - ) - await client.update_autonomous_database(request=None) + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.UpdateAutonomousDatabaseRequest() - assert args[0] == request_msg + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "delete", + "query_params": pb_request, + } + transcode.return_value = transcode_result + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_delete_autonomous_database_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.delete_autonomous_database), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - operations_pb2.Operation(name="operations/spam") - ) - await client.delete_autonomous_database(request=None) + response = client.delete_odb_network(request) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.DeleteAutonomousDatabaseRequest() - assert args[0] == request_msg + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_restore_autonomous_database_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", +def test_delete_odb_network_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.restore_autonomous_database), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - operations_pb2.Operation(name="operations/spam") - ) - await client.restore_autonomous_database(request=None) + unset_fields = transport.delete_odb_network._get_unset_required_fields({}) + assert set(unset_fields) == (set(("requestId",)) & set(("name",))) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.RestoreAutonomousDatabaseRequest() - assert args[0] == request_msg +def test_delete_odb_network_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_generate_autonomous_database_wallet_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.generate_autonomous_database_wallet), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - oracledatabase.GenerateAutonomousDatabaseWalletResponse( - archive_content=b"archive_content_blob", - ) - ) - await client.generate_autonomous_database_wallet(request=None) + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/odbNetworks/sample3" + } - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.GenerateAutonomousDatabaseWalletRequest() - assert args[0] == request_msg + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + ) + mock_args.update(sample_request) + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_list_autonomous_db_versions_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) + client.delete_odb_network(**mock_args) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_autonomous_db_versions), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - oracledatabase.ListAutonomousDbVersionsResponse( - next_page_token="next_page_token_value", - ) + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/odbNetworks/*}" + % client.transport._host, + args[1], ) - await client.list_autonomous_db_versions(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.ListAutonomousDbVersionsRequest() - assert args[0] == request_msg -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_list_autonomous_database_character_sets_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", +def test_delete_odb_network_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_autonomous_database_character_sets), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - oracledatabase.ListAutonomousDatabaseCharacterSetsResponse( - next_page_token="next_page_token_value", - ) + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.delete_odb_network( + odb_network.DeleteOdbNetworkRequest(), + name="name_value", ) - await client.list_autonomous_database_character_sets(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.ListAutonomousDatabaseCharacterSetsRequest() - assert args[0] == request_msg - -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_list_autonomous_database_backups_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_autonomous_database_backups), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - oracledatabase.ListAutonomousDatabaseBackupsResponse( - next_page_token="next_page_token_value", - ) +def test_list_odb_subnets_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", ) - await client.list_autonomous_database_backups(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.ListAutonomousDatabaseBackupsRequest() - assert args[0] == request_msg + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_stop_autonomous_database_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) + # Ensure method has been cached + assert client._transport.list_odb_subnets in client._transport._wrapped_methods - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.stop_autonomous_database), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - operations_pb2.Operation(name="operations/spam") + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[client._transport.list_odb_subnets] = ( + mock_rpc ) - await client.stop_autonomous_database(request=None) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.StopAutonomousDatabaseRequest() - assert args[0] == request_msg + request = {} + client.list_odb_subnets(request) + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_start_autonomous_database_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) + client.list_odb_subnets(request) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.start_autonomous_database), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - operations_pb2.Operation(name="operations/spam") - ) - await client.start_autonomous_database(request=None) + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.StartAutonomousDatabaseRequest() - assert args[0] == request_msg +def test_list_odb_subnets_rest_required_fields( + request_type=odb_subnet.ListOdbSubnetsRequest, +): + transport_class = transports.OracleDatabaseRestTransport -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_restart_autonomous_database_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", + request_init = {} + request_init["parent"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.restart_autonomous_database), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - operations_pb2.Operation(name="operations/spam") - ) - await client.restart_autonomous_database(request=None) + # verify fields with default values are dropped - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.RestartAutonomousDatabaseRequest() - assert args[0] == request_msg + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_odb_subnets._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + # verify required fields with default values are now present -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_switchover_autonomous_database_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) + jsonified_request["parent"] = "parent_value" - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.switchover_autonomous_database), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - operations_pb2.Operation(name="operations/spam") + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_odb_subnets._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "filter", + "order_by", + "page_size", + "page_token", ) - await client.switchover_autonomous_database(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.SwitchoverAutonomousDatabaseRequest() - assert args[0] == request_msg + ) + jsonified_request.update(unset_fields) + # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_failover_autonomous_database_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", ) + request = request_type(**request_init) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.failover_autonomous_database), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - operations_pb2.Operation(name="operations/spam") - ) - await client.failover_autonomous_database(request=None) + # Designate an appropriate value for the returned response. + return_value = odb_subnet.ListOdbSubnetsResponse() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.FailoverAutonomousDatabaseRequest() - assert args[0] == request_msg + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = odb_subnet.ListOdbSubnetsResponse.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_list_odb_networks_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_odb_networks), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - odb_network.ListOdbNetworksResponse( - next_page_token="next_page_token_value", - unreachable=["unreachable_value"], - ) - ) - await client.list_odb_networks(request=None) + response = client.list_odb_subnets(request) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = odb_network.ListOdbNetworksRequest() - assert args[0] == request_msg + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_get_odb_network_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", +def test_list_odb_subnets_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials ) - # Mock the actual call, and fake the request. - with mock.patch.object(type(client.transport.get_odb_network), "__call__") as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - odb_network.OdbNetwork( - name="name_value", - network="network_value", - state=odb_network.OdbNetwork.State.PROVISIONING, - entitlement_id="entitlement_id_value", - gcp_oracle_zone="gcp_oracle_zone_value", + unset_fields = transport.list_odb_subnets._get_unset_required_fields({}) + assert set(unset_fields) == ( + set( + ( + "filter", + "orderBy", + "pageSize", + "pageToken", ) ) - await client.get_odb_network(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = odb_network.GetOdbNetworkRequest() - assert args[0] == request_msg + & set(("parent",)) + ) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_create_odb_network_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", +def test_list_odb_subnets_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.create_odb_network), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - operations_pb2.Operation(name="operations/spam") - ) - await client.create_odb_network(request=None) + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = odb_subnet.ListOdbSubnetsResponse() - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = gco_odb_network.CreateOdbNetworkRequest() - assert args[0] == request_msg + # get arguments that satisfy an http rule for this method + sample_request = { + "parent": "projects/sample1/locations/sample2/odbNetworks/sample3" + } + # get truthy value for each flattened field + mock_args = dict( + parent="parent_value", + ) + mock_args.update(sample_request) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_delete_odb_network_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = odb_subnet.ListOdbSubnetsResponse.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.delete_odb_network), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - operations_pb2.Operation(name="operations/spam") - ) - await client.delete_odb_network(request=None) + client.list_odb_subnets(**mock_args) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = odb_network.DeleteOdbNetworkRequest() - assert args[0] == request_msg + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{parent=projects/*/locations/*/odbNetworks/*}/odbSubnets" + % client.transport._host, + args[1], + ) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_list_odb_subnets_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", +def test_list_odb_subnets_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, ) - # Mock the actual call, and fake the request. - with mock.patch.object(type(client.transport.list_odb_subnets), "__call__") as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - odb_subnet.ListOdbSubnetsResponse( - next_page_token="next_page_token_value", - unreachable=["unreachable_value"], - ) + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.list_odb_subnets( + odb_subnet.ListOdbSubnetsRequest(), + parent="parent_value", ) - await client.list_odb_subnets(request=None) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = odb_subnet.ListOdbSubnetsRequest() - assert args[0] == request_msg +def test_list_odb_subnets_rest_pager(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_get_odb_subnet_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) - - # Mock the actual call, and fake the request. - with mock.patch.object(type(client.transport.get_odb_subnet), "__call__") as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - odb_subnet.OdbSubnet( - name="name_value", - cidr_range="cidr_range_value", - purpose=odb_subnet.OdbSubnet.Purpose.CLIENT_SUBNET, - state=odb_subnet.OdbSubnet.State.PROVISIONING, - ) + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + odb_subnet.ListOdbSubnetsResponse( + odb_subnets=[ + odb_subnet.OdbSubnet(), + odb_subnet.OdbSubnet(), + odb_subnet.OdbSubnet(), + ], + next_page_token="abc", + ), + odb_subnet.ListOdbSubnetsResponse( + odb_subnets=[], + next_page_token="def", + ), + odb_subnet.ListOdbSubnetsResponse( + odb_subnets=[ + odb_subnet.OdbSubnet(), + ], + next_page_token="ghi", + ), + odb_subnet.ListOdbSubnetsResponse( + odb_subnets=[ + odb_subnet.OdbSubnet(), + odb_subnet.OdbSubnet(), + ], + ), ) - await client.get_odb_subnet(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = odb_subnet.GetOdbSubnetRequest() - assert args[0] == request_msg + # Two responses for two calls + response = response + response + # Wrap the values into proper Response objs + response = tuple(odb_subnet.ListOdbSubnetsResponse.to_json(x) for x in response) + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_create_odb_subnet_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) + sample_request = { + "parent": "projects/sample1/locations/sample2/odbNetworks/sample3" + } - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.create_odb_subnet), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - operations_pb2.Operation(name="operations/spam") - ) - await client.create_odb_subnet(request=None) + pager = client.list_odb_subnets(request=sample_request) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = gco_odb_subnet.CreateOdbSubnetRequest() - assert args[0] == request_msg + results = list(pager) + assert len(results) == 6 + assert all(isinstance(i, odb_subnet.OdbSubnet) for i in results) + pages = list(client.list_odb_subnets(request=sample_request).pages) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_delete_odb_subnet_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.delete_odb_subnet), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - operations_pb2.Operation(name="operations/spam") +def test_get_odb_subnet_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", ) - await client.delete_odb_subnet(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = odb_subnet.DeleteOdbSubnetRequest() - assert args[0] == request_msg + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_list_exadb_vm_clusters_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) + # Ensure method has been cached + assert client._transport.get_odb_subnet in client._transport._wrapped_methods - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_exadb_vm_clusters), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - oracledatabase.ListExadbVmClustersResponse( - next_page_token="next_page_token_value", - ) + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. ) - await client.list_exadb_vm_clusters(request=None) + client._transport._wrapped_methods[client._transport.get_odb_subnet] = mock_rpc - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.ListExadbVmClustersRequest() - assert args[0] == request_msg + request = {} + client.get_odb_subnet(request) + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_get_exadb_vm_cluster_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) + client.get_odb_subnet(request) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.get_exadb_vm_cluster), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - exadb_vm_cluster.ExadbVmCluster( - name="name_value", - gcp_oracle_zone="gcp_oracle_zone_value", - odb_network="odb_network_value", - odb_subnet="odb_subnet_value", - backup_odb_subnet="backup_odb_subnet_value", - display_name="display_name_value", - entitlement_id="entitlement_id_value", - ) - ) - await client.get_exadb_vm_cluster(request=None) + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.GetExadbVmClusterRequest() - assert args[0] == request_msg +def test_get_odb_subnet_rest_required_fields( + request_type=odb_subnet.GetOdbSubnetRequest, +): + transport_class = transports.OracleDatabaseRestTransport -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_create_exadb_vm_cluster_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.create_exadb_vm_cluster), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - operations_pb2.Operation(name="operations/spam") - ) - await client.create_exadb_vm_cluster(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.CreateExadbVmClusterRequest() - assert args[0] == request_msg + # verify fields with default values are dropped + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_odb_subnet._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_delete_exadb_vm_cluster_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) + # verify required fields with default values are now present - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.delete_exadb_vm_cluster), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - operations_pb2.Operation(name="operations/spam") - ) - await client.delete_exadb_vm_cluster(request=None) + jsonified_request["name"] = "name_value" - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.DeleteExadbVmClusterRequest() - assert args[0] == request_msg + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_odb_subnet._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_update_exadb_vm_cluster_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", ) + request = request_type(**request_init) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.update_exadb_vm_cluster), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - operations_pb2.Operation(name="operations/spam") - ) - await client.update_exadb_vm_cluster(request=None) + # Designate an appropriate value for the returned response. + return_value = odb_subnet.OdbSubnet() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.UpdateExadbVmClusterRequest() - assert args[0] == request_msg + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = odb_subnet.OdbSubnet.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_remove_virtual_machine_exadb_vm_cluster_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.remove_virtual_machine_exadb_vm_cluster), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - operations_pb2.Operation(name="operations/spam") - ) - await client.remove_virtual_machine_exadb_vm_cluster(request=None) + response = client.get_odb_subnet(request) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = oracledatabase.RemoveVirtualMachineExadbVmClusterRequest() - assert args[0] == request_msg + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_list_exascale_db_storage_vaults_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", +def test_get_odb_subnet_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_exascale_db_storage_vaults), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse( - next_page_token="next_page_token_value", - ) - ) - await client.list_exascale_db_storage_vaults(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest() - assert args[0] == request_msg + unset_fields = transport.get_odb_subnet._get_unset_required_fields({}) + assert set(unset_fields) == (set(()) & set(("name",))) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_get_exascale_db_storage_vault_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", +def test_get_odb_subnet_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.get_exascale_db_storage_vault), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - exascale_db_storage_vault.ExascaleDbStorageVault( - name="name_value", - display_name="display_name_value", - gcp_oracle_zone="gcp_oracle_zone_value", - entitlement_id="entitlement_id_value", - ) + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = odb_subnet.OdbSubnet() + + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/odbNetworks/sample3/odbSubnets/sample4" + } + + # get truthy value for each flattened field + mock_args = dict( + name="name_value", ) - await client.get_exascale_db_storage_vault(request=None) + mock_args.update(sample_request) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = exascale_db_storage_vault.GetExascaleDbStorageVaultRequest() - assert args[0] == request_msg + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = odb_subnet.OdbSubnet.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.get_odb_subnet(**mock_args) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_create_exascale_db_storage_vault_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/odbNetworks/*/odbSubnets/*}" + % client.transport._host, + args[1], + ) + + +def test_get_odb_subnet_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.create_exascale_db_storage_vault), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - operations_pb2.Operation(name="operations/spam") + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.get_odb_subnet( + odb_subnet.GetOdbSubnetRequest(), + name="name_value", ) - await client.create_exascale_db_storage_vault(request=None) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = ( - gco_exascale_db_storage_vault.CreateExascaleDbStorageVaultRequest() + +def test_create_odb_subnet_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", ) - assert args[0] == request_msg + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_delete_exascale_db_storage_vault_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) + # Ensure method has been cached + assert client._transport.create_odb_subnet in client._transport._wrapped_methods - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.delete_exascale_db_storage_vault), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - operations_pb2.Operation(name="operations/spam") + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[client._transport.create_odb_subnet] = ( + mock_rpc ) - await client.delete_exascale_db_storage_vault(request=None) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = exascale_db_storage_vault.DeleteExascaleDbStorageVaultRequest() - assert args[0] == request_msg + request = {} + client.create_odb_subnet(request) + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_list_db_system_initial_storage_sizes_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.create_odb_subnet(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_create_odb_subnet_rest_required_fields( + request_type=gco_odb_subnet.CreateOdbSubnetRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["parent"] = "" + request_init["odb_subnet_id"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_db_system_initial_storage_sizes), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse( - next_page_token="next_page_token_value", - ) - ) - await client.list_db_system_initial_storage_sizes(request=None) + # verify fields with default values are dropped + assert "odbSubnetId" not in jsonified_request - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = ( - db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest() + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).create_odb_subnet._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + assert "odbSubnetId" in jsonified_request + assert jsonified_request["odbSubnetId"] == request_init["odb_subnet_id"] + + jsonified_request["parent"] = "parent_value" + jsonified_request["odbSubnetId"] = "odb_subnet_id_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).create_odb_subnet._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "odb_subnet_id", + "request_id", ) - assert args[0] == request_msg + ) + jsonified_request.update(unset_fields) + # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + assert "odbSubnetId" in jsonified_request + assert jsonified_request["odbSubnetId"] == "odb_subnet_id_value" -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_list_databases_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", ) + request = request_type(**request_init) - # Mock the actual call, and fake the request. - with mock.patch.object(type(client.transport.list_databases), "__call__") as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - database.ListDatabasesResponse( - next_page_token="next_page_token_value", - ) - ) - await client.list_databases(request=None) + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "post", + "query_params": pb_request, + } + transcode_result["body"] = pb_request + transcode.return_value = transcode_result - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = database.ListDatabasesRequest() - assert args[0] == request_msg + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_get_database_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", + response = client.create_odb_subnet(request) + + expected_params = [ + ( + "odbSubnetId", + "", + ), + ("$alt", "json;enum-encoding=int"), + ] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_create_odb_subnet_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials ) - # Mock the actual call, and fake the request. - with mock.patch.object(type(client.transport.get_database), "__call__") as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - database.Database( - name="name_value", - db_name="db_name_value", - db_unique_name="db_unique_name_value", - admin_password="admin_password_value", - tde_wallet_password="tde_wallet_password_value", - character_set="character_set_value", - ncharacter_set="ncharacter_set_value", - oci_url="oci_url_value", - database_id="database_id_value", - db_home_name="db_home_name_value", - gcp_oracle_zone="gcp_oracle_zone_value", - ops_insights_status=database.Database.OperationsInsightsStatus.ENABLING, + unset_fields = transport.create_odb_subnet._get_unset_required_fields({}) + assert set(unset_fields) == ( + set( + ( + "odbSubnetId", + "requestId", ) ) - await client.get_database(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = database.GetDatabaseRequest() - assert args[0] == request_msg + & set( + ( + "parent", + "odbSubnetId", + "odbSubnet", + ) + ) + ) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_list_pluggable_databases_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", +def test_create_odb_subnet_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_pluggable_databases), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - pluggable_database.ListPluggableDatabasesResponse( - next_page_token="next_page_token_value", - ) + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # get arguments that satisfy an http rule for this method + sample_request = { + "parent": "projects/sample1/locations/sample2/odbNetworks/sample3" + } + + # get truthy value for each flattened field + mock_args = dict( + parent="parent_value", + odb_subnet=gco_odb_subnet.OdbSubnet(name="name_value"), + odb_subnet_id="odb_subnet_id_value", ) - await client.list_pluggable_databases(request=None) + mock_args.update(sample_request) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = pluggable_database.ListPluggableDatabasesRequest() - assert args[0] == request_msg + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.create_odb_subnet(**mock_args) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_get_pluggable_database_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{parent=projects/*/locations/*/odbNetworks/*}/odbSubnets" + % client.transport._host, + args[1], + ) + + +def test_create_odb_subnet_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, ) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.get_pluggable_database), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - pluggable_database.PluggableDatabase( - name="name_value", - oci_url="oci_url_value", - ) + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.create_odb_subnet( + gco_odb_subnet.CreateOdbSubnetRequest(), + parent="parent_value", + odb_subnet=gco_odb_subnet.OdbSubnet(name="name_value"), + odb_subnet_id="odb_subnet_id_value", ) - await client.get_pluggable_database(request=None) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = pluggable_database.GetPluggableDatabaseRequest() - assert args[0] == request_msg +def test_delete_odb_subnet_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_list_db_systems_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", - ) + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() - # Mock the actual call, and fake the request. - with mock.patch.object(type(client.transport.list_db_systems), "__call__") as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - db_system.ListDbSystemsResponse( - next_page_token="next_page_token_value", - ) + # Ensure method has been cached + assert client._transport.delete_odb_subnet in client._transport._wrapped_methods + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[client._transport.delete_odb_subnet] = ( + mock_rpc ) - await client.list_db_systems(request=None) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = db_system.ListDbSystemsRequest() - assert args[0] == request_msg + request = {} + client.delete_odb_subnet(request) + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_get_db_system_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.delete_odb_subnet(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_delete_odb_subnet_rest_required_fields( + request_type=odb_subnet.DeleteOdbSubnetRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) ) - # Mock the actual call, and fake the request. - with mock.patch.object(type(client.transport.get_db_system), "__call__") as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - db_system.DbSystem( - name="name_value", - gcp_oracle_zone="gcp_oracle_zone_value", - odb_network="odb_network_value", - odb_subnet="odb_subnet_value", - entitlement_id="entitlement_id_value", - display_name="display_name_value", - oci_url="oci_url_value", - ) - ) - await client.get_db_system(request=None) + # verify fields with default values are dropped - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = db_system.GetDbSystemRequest() - assert args[0] == request_msg + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).delete_odb_subnet._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + # verify required fields with default values are now present -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_create_db_system_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", + jsonified_request["name"] = "name_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).delete_odb_subnet._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set(("request_id",)) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", ) + request = request_type(**request_init) - # Mock the actual call, and fake the request. - with mock.patch.object(type(client.transport.create_db_system), "__call__") as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - operations_pb2.Operation(name="operations/spam") + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "delete", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.delete_odb_subnet(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_delete_odb_subnet_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.delete_odb_subnet._get_unset_required_fields({}) + assert set(unset_fields) == (set(("requestId",)) & set(("name",))) + + +def test_delete_odb_subnet_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/odbNetworks/sample3/odbSubnets/sample4" + } + + # get truthy value for each flattened field + mock_args = dict( + name="name_value", ) - await client.create_db_system(request=None) + mock_args.update(sample_request) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = gco_db_system.CreateDbSystemRequest() - assert args[0] == request_msg + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.delete_odb_subnet(**mock_args) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_delete_db_system_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/odbNetworks/*/odbSubnets/*}" + % client.transport._host, + args[1], + ) + + +def test_delete_odb_subnet_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.delete_odb_subnet( + odb_subnet.DeleteOdbSubnetRequest(), + name="name_value", + ) + + +def test_list_exadb_vm_clusters_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.list_exadb_vm_clusters + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[client._transport.list_exadb_vm_clusters] = ( + mock_rpc + ) + + request = {} + client.list_exadb_vm_clusters(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.list_exadb_vm_clusters(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_list_exadb_vm_clusters_rest_required_fields( + request_type=oracledatabase.ListExadbVmClustersRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["parent"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_exadb_vm_clusters._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["parent"] = "parent_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_exadb_vm_clusters._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "filter", + "order_by", + "page_size", + "page_token", + ) + ) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = oracledatabase.ListExadbVmClustersResponse() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = oracledatabase.ListExadbVmClustersResponse.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.list_exadb_vm_clusters(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_list_exadb_vm_clusters_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.list_exadb_vm_clusters._get_unset_required_fields({}) + assert set(unset_fields) == ( + set( + ( + "filter", + "orderBy", + "pageSize", + "pageToken", + ) + ) + & set(("parent",)) + ) + + +def test_list_exadb_vm_clusters_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = oracledatabase.ListExadbVmClustersResponse() + + # get arguments that satisfy an http rule for this method + sample_request = {"parent": "projects/sample1/locations/sample2"} + + # get truthy value for each flattened field + mock_args = dict( + parent="parent_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = oracledatabase.ListExadbVmClustersResponse.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.list_exadb_vm_clusters(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{parent=projects/*/locations/*}/exadbVmClusters" + % client.transport._host, + args[1], + ) + + +def test_list_exadb_vm_clusters_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.list_exadb_vm_clusters( + oracledatabase.ListExadbVmClustersRequest(), + parent="parent_value", + ) + + +def test_list_exadb_vm_clusters_rest_pager(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + oracledatabase.ListExadbVmClustersResponse( + exadb_vm_clusters=[ + exadb_vm_cluster.ExadbVmCluster(), + exadb_vm_cluster.ExadbVmCluster(), + exadb_vm_cluster.ExadbVmCluster(), + ], + next_page_token="abc", + ), + oracledatabase.ListExadbVmClustersResponse( + exadb_vm_clusters=[], + next_page_token="def", + ), + oracledatabase.ListExadbVmClustersResponse( + exadb_vm_clusters=[ + exadb_vm_cluster.ExadbVmCluster(), + ], + next_page_token="ghi", + ), + oracledatabase.ListExadbVmClustersResponse( + exadb_vm_clusters=[ + exadb_vm_cluster.ExadbVmCluster(), + exadb_vm_cluster.ExadbVmCluster(), + ], + ), + ) + # Two responses for two calls + response = response + response + + # Wrap the values into proper Response objs + response = tuple( + oracledatabase.ListExadbVmClustersResponse.to_json(x) for x in response + ) + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values + + sample_request = {"parent": "projects/sample1/locations/sample2"} + + pager = client.list_exadb_vm_clusters(request=sample_request) + + results = list(pager) + assert len(results) == 6 + assert all(isinstance(i, exadb_vm_cluster.ExadbVmCluster) for i in results) + + pages = list(client.list_exadb_vm_clusters(request=sample_request).pages) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token + + +def test_get_exadb_vm_cluster_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.get_exadb_vm_cluster in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[client._transport.get_exadb_vm_cluster] = ( + mock_rpc + ) + + request = {} + client.get_exadb_vm_cluster(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.get_exadb_vm_cluster(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_get_exadb_vm_cluster_rest_required_fields( + request_type=oracledatabase.GetExadbVmClusterRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_exadb_vm_cluster._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["name"] = "name_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_exadb_vm_cluster._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = exadb_vm_cluster.ExadbVmCluster() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = exadb_vm_cluster.ExadbVmCluster.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.get_exadb_vm_cluster(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_get_exadb_vm_cluster_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.get_exadb_vm_cluster._get_unset_required_fields({}) + assert set(unset_fields) == (set(()) & set(("name",))) + + +def test_get_exadb_vm_cluster_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = exadb_vm_cluster.ExadbVmCluster() + + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/exadbVmClusters/sample3" + } + + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = exadb_vm_cluster.ExadbVmCluster.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.get_exadb_vm_cluster(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/exadbVmClusters/*}" + % client.transport._host, + args[1], + ) + + +def test_get_exadb_vm_cluster_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.get_exadb_vm_cluster( + oracledatabase.GetExadbVmClusterRequest(), + name="name_value", + ) + + +def test_create_exadb_vm_cluster_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.create_exadb_vm_cluster + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.create_exadb_vm_cluster + ] = mock_rpc + + request = {} + client.create_exadb_vm_cluster(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.create_exadb_vm_cluster(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_create_exadb_vm_cluster_rest_required_fields( + request_type=oracledatabase.CreateExadbVmClusterRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["parent"] = "" + request_init["exadb_vm_cluster_id"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + assert "exadbVmClusterId" not in jsonified_request + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).create_exadb_vm_cluster._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + assert "exadbVmClusterId" in jsonified_request + assert jsonified_request["exadbVmClusterId"] == request_init["exadb_vm_cluster_id"] + + jsonified_request["parent"] = "parent_value" + jsonified_request["exadbVmClusterId"] = "exadb_vm_cluster_id_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).create_exadb_vm_cluster._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "exadb_vm_cluster_id", + "request_id", + ) + ) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + assert "exadbVmClusterId" in jsonified_request + assert jsonified_request["exadbVmClusterId"] == "exadb_vm_cluster_id_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "post", + "query_params": pb_request, + } + transcode_result["body"] = pb_request + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.create_exadb_vm_cluster(request) + + expected_params = [ + ( + "exadbVmClusterId", + "", + ), + ("$alt", "json;enum-encoding=int"), + ] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_create_exadb_vm_cluster_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.create_exadb_vm_cluster._get_unset_required_fields({}) + assert set(unset_fields) == ( + set( + ( + "exadbVmClusterId", + "requestId", + ) + ) + & set( + ( + "parent", + "exadbVmClusterId", + "exadbVmCluster", + ) + ) + ) + + +def test_create_exadb_vm_cluster_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # get arguments that satisfy an http rule for this method + sample_request = {"parent": "projects/sample1/locations/sample2"} + + # get truthy value for each flattened field + mock_args = dict( + parent="parent_value", + exadb_vm_cluster=gco_exadb_vm_cluster.ExadbVmCluster(name="name_value"), + exadb_vm_cluster_id="exadb_vm_cluster_id_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.create_exadb_vm_cluster(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{parent=projects/*/locations/*}/exadbVmClusters" + % client.transport._host, + args[1], + ) + + +def test_create_exadb_vm_cluster_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.create_exadb_vm_cluster( + oracledatabase.CreateExadbVmClusterRequest(), + parent="parent_value", + exadb_vm_cluster=gco_exadb_vm_cluster.ExadbVmCluster(name="name_value"), + exadb_vm_cluster_id="exadb_vm_cluster_id_value", + ) + + +def test_delete_exadb_vm_cluster_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.delete_exadb_vm_cluster + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.delete_exadb_vm_cluster + ] = mock_rpc + + request = {} + client.delete_exadb_vm_cluster(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.delete_exadb_vm_cluster(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_delete_exadb_vm_cluster_rest_required_fields( + request_type=oracledatabase.DeleteExadbVmClusterRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).delete_exadb_vm_cluster._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["name"] = "name_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).delete_exadb_vm_cluster._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set(("request_id",)) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "delete", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.delete_exadb_vm_cluster(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_delete_exadb_vm_cluster_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.delete_exadb_vm_cluster._get_unset_required_fields({}) + assert set(unset_fields) == (set(("requestId",)) & set(("name",))) + + +def test_delete_exadb_vm_cluster_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/exadbVmClusters/sample3" + } + + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.delete_exadb_vm_cluster(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/exadbVmClusters/*}" + % client.transport._host, + args[1], + ) + + +def test_delete_exadb_vm_cluster_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.delete_exadb_vm_cluster( + oracledatabase.DeleteExadbVmClusterRequest(), + name="name_value", + ) + + +def test_update_exadb_vm_cluster_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.update_exadb_vm_cluster + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.update_exadb_vm_cluster + ] = mock_rpc + + request = {} + client.update_exadb_vm_cluster(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.update_exadb_vm_cluster(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_update_exadb_vm_cluster_rest_required_fields( + request_type=oracledatabase.UpdateExadbVmClusterRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).update_exadb_vm_cluster._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).update_exadb_vm_cluster._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "request_id", + "update_mask", + ) + ) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "patch", + "query_params": pb_request, + } + transcode_result["body"] = pb_request + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.update_exadb_vm_cluster(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_update_exadb_vm_cluster_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.update_exadb_vm_cluster._get_unset_required_fields({}) + assert set(unset_fields) == ( + set( + ( + "requestId", + "updateMask", + ) + ) + & set(("exadbVmCluster",)) + ) + + +def test_update_exadb_vm_cluster_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # get arguments that satisfy an http rule for this method + sample_request = { + "exadb_vm_cluster": { + "name": "projects/sample1/locations/sample2/exadbVmClusters/sample3" + } + } + + # get truthy value for each flattened field + mock_args = dict( + exadb_vm_cluster=gco_exadb_vm_cluster.ExadbVmCluster(name="name_value"), + update_mask=field_mask_pb2.FieldMask(paths=["paths_value"]), + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.update_exadb_vm_cluster(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{exadb_vm_cluster.name=projects/*/locations/*/exadbVmClusters/*}" + % client.transport._host, + args[1], + ) + + +def test_update_exadb_vm_cluster_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.update_exadb_vm_cluster( + oracledatabase.UpdateExadbVmClusterRequest(), + exadb_vm_cluster=gco_exadb_vm_cluster.ExadbVmCluster(name="name_value"), + update_mask=field_mask_pb2.FieldMask(paths=["paths_value"]), + ) + + +def test_remove_virtual_machine_exadb_vm_cluster_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.remove_virtual_machine_exadb_vm_cluster + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.remove_virtual_machine_exadb_vm_cluster + ] = mock_rpc + + request = {} + client.remove_virtual_machine_exadb_vm_cluster(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.remove_virtual_machine_exadb_vm_cluster(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_remove_virtual_machine_exadb_vm_cluster_rest_required_fields( + request_type=oracledatabase.RemoveVirtualMachineExadbVmClusterRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["name"] = "" + request_init["hostnames"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).remove_virtual_machine_exadb_vm_cluster._get_unset_required_fields( + jsonified_request + ) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["name"] = "name_value" + jsonified_request["hostnames"] = "hostnames_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).remove_virtual_machine_exadb_vm_cluster._get_unset_required_fields( + jsonified_request + ) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" + assert "hostnames" in jsonified_request + assert jsonified_request["hostnames"] == "hostnames_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "post", + "query_params": pb_request, + } + transcode_result["body"] = pb_request + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.remove_virtual_machine_exadb_vm_cluster(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_remove_virtual_machine_exadb_vm_cluster_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = ( + transport.remove_virtual_machine_exadb_vm_cluster._get_unset_required_fields({}) + ) + assert set(unset_fields) == ( + set(()) + & set( + ( + "name", + "hostnames", + ) + ) + ) + + +def test_remove_virtual_machine_exadb_vm_cluster_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/exadbVmClusters/sample3" + } + + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + hostnames=["hostnames_value"], + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.remove_virtual_machine_exadb_vm_cluster(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/exadbVmClusters/*}:removeVirtualMachine" + % client.transport._host, + args[1], + ) + + +def test_remove_virtual_machine_exadb_vm_cluster_rest_flattened_error( + transport: str = "rest", +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.remove_virtual_machine_exadb_vm_cluster( + oracledatabase.RemoveVirtualMachineExadbVmClusterRequest(), + name="name_value", + hostnames=["hostnames_value"], + ) + + +def test_list_exascale_db_storage_vaults_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.list_exascale_db_storage_vaults + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.list_exascale_db_storage_vaults + ] = mock_rpc + + request = {} + client.list_exascale_db_storage_vaults(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.list_exascale_db_storage_vaults(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_list_exascale_db_storage_vaults_rest_required_fields( + request_type=exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["parent"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_exascale_db_storage_vaults._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["parent"] = "parent_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_exascale_db_storage_vaults._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "filter", + "order_by", + "page_size", + "page_token", + ) + ) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = ( + exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse.pb( + return_value + ) + ) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.list_exascale_db_storage_vaults(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_list_exascale_db_storage_vaults_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.list_exascale_db_storage_vaults._get_unset_required_fields( + {} + ) + assert set(unset_fields) == ( + set( + ( + "filter", + "orderBy", + "pageSize", + "pageToken", + ) + ) + & set(("parent",)) + ) + + +def test_list_exascale_db_storage_vaults_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse() + + # get arguments that satisfy an http rule for this method + sample_request = {"parent": "projects/sample1/locations/sample2"} + + # get truthy value for each flattened field + mock_args = dict( + parent="parent_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.list_exascale_db_storage_vaults(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{parent=projects/*/locations/*}/exascaleDbStorageVaults" + % client.transport._host, + args[1], + ) + + +def test_list_exascale_db_storage_vaults_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.list_exascale_db_storage_vaults( + exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest(), + parent="parent_value", + ) + + +def test_list_exascale_db_storage_vaults_rest_pager(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse( + exascale_db_storage_vaults=[ + exascale_db_storage_vault.ExascaleDbStorageVault(), + exascale_db_storage_vault.ExascaleDbStorageVault(), + exascale_db_storage_vault.ExascaleDbStorageVault(), + ], + next_page_token="abc", + ), + exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse( + exascale_db_storage_vaults=[], + next_page_token="def", + ), + exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse( + exascale_db_storage_vaults=[ + exascale_db_storage_vault.ExascaleDbStorageVault(), + ], + next_page_token="ghi", + ), + exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse( + exascale_db_storage_vaults=[ + exascale_db_storage_vault.ExascaleDbStorageVault(), + exascale_db_storage_vault.ExascaleDbStorageVault(), + ], + ), + ) + # Two responses for two calls + response = response + response + + # Wrap the values into proper Response objs + response = tuple( + exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse.to_json(x) + for x in response + ) + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values + + sample_request = {"parent": "projects/sample1/locations/sample2"} + + pager = client.list_exascale_db_storage_vaults(request=sample_request) + + results = list(pager) + assert len(results) == 6 + assert all( + isinstance(i, exascale_db_storage_vault.ExascaleDbStorageVault) + for i in results + ) + + pages = list( + client.list_exascale_db_storage_vaults(request=sample_request).pages + ) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token + + +def test_get_exascale_db_storage_vault_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.get_exascale_db_storage_vault + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.get_exascale_db_storage_vault + ] = mock_rpc + + request = {} + client.get_exascale_db_storage_vault(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.get_exascale_db_storage_vault(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_get_exascale_db_storage_vault_rest_required_fields( + request_type=exascale_db_storage_vault.GetExascaleDbStorageVaultRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_exascale_db_storage_vault._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["name"] = "name_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_exascale_db_storage_vault._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = exascale_db_storage_vault.ExascaleDbStorageVault() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = exascale_db_storage_vault.ExascaleDbStorageVault.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.get_exascale_db_storage_vault(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_get_exascale_db_storage_vault_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.get_exascale_db_storage_vault._get_unset_required_fields( + {} + ) + assert set(unset_fields) == (set(()) & set(("name",))) + + +def test_get_exascale_db_storage_vault_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = exascale_db_storage_vault.ExascaleDbStorageVault() + + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/exascaleDbStorageVaults/sample3" + } + + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = exascale_db_storage_vault.ExascaleDbStorageVault.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.get_exascale_db_storage_vault(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/exascaleDbStorageVaults/*}" + % client.transport._host, + args[1], + ) + + +def test_get_exascale_db_storage_vault_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.get_exascale_db_storage_vault( + exascale_db_storage_vault.GetExascaleDbStorageVaultRequest(), + name="name_value", + ) + + +def test_create_exascale_db_storage_vault_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.create_exascale_db_storage_vault + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.create_exascale_db_storage_vault + ] = mock_rpc + + request = {} + client.create_exascale_db_storage_vault(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.create_exascale_db_storage_vault(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_create_exascale_db_storage_vault_rest_required_fields( + request_type=gco_exascale_db_storage_vault.CreateExascaleDbStorageVaultRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["parent"] = "" + request_init["exascale_db_storage_vault_id"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + assert "exascaleDbStorageVaultId" not in jsonified_request + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).create_exascale_db_storage_vault._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + assert "exascaleDbStorageVaultId" in jsonified_request + assert ( + jsonified_request["exascaleDbStorageVaultId"] + == request_init["exascale_db_storage_vault_id"] + ) + + jsonified_request["parent"] = "parent_value" + jsonified_request["exascaleDbStorageVaultId"] = "exascale_db_storage_vault_id_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).create_exascale_db_storage_vault._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "exascale_db_storage_vault_id", + "request_id", + ) + ) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + assert "exascaleDbStorageVaultId" in jsonified_request + assert ( + jsonified_request["exascaleDbStorageVaultId"] + == "exascale_db_storage_vault_id_value" + ) + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "post", + "query_params": pb_request, + } + transcode_result["body"] = pb_request + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.create_exascale_db_storage_vault(request) + + expected_params = [ + ( + "exascaleDbStorageVaultId", + "", + ), + ("$alt", "json;enum-encoding=int"), + ] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_create_exascale_db_storage_vault_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = ( + transport.create_exascale_db_storage_vault._get_unset_required_fields({}) + ) + assert set(unset_fields) == ( + set( + ( + "exascaleDbStorageVaultId", + "requestId", + ) + ) + & set( + ( + "parent", + "exascaleDbStorageVaultId", + "exascaleDbStorageVault", + ) + ) + ) + + +def test_create_exascale_db_storage_vault_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # get arguments that satisfy an http rule for this method + sample_request = {"parent": "projects/sample1/locations/sample2"} + + # get truthy value for each flattened field + mock_args = dict( + parent="parent_value", + exascale_db_storage_vault=gco_exascale_db_storage_vault.ExascaleDbStorageVault( + name="name_value" + ), + exascale_db_storage_vault_id="exascale_db_storage_vault_id_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.create_exascale_db_storage_vault(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{parent=projects/*/locations/*}/exascaleDbStorageVaults" + % client.transport._host, + args[1], + ) + + +def test_create_exascale_db_storage_vault_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.create_exascale_db_storage_vault( + gco_exascale_db_storage_vault.CreateExascaleDbStorageVaultRequest(), + parent="parent_value", + exascale_db_storage_vault=gco_exascale_db_storage_vault.ExascaleDbStorageVault( + name="name_value" + ), + exascale_db_storage_vault_id="exascale_db_storage_vault_id_value", + ) + + +def test_delete_exascale_db_storage_vault_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.delete_exascale_db_storage_vault + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.delete_exascale_db_storage_vault + ] = mock_rpc + + request = {} + client.delete_exascale_db_storage_vault(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.delete_exascale_db_storage_vault(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_delete_exascale_db_storage_vault_rest_required_fields( + request_type=exascale_db_storage_vault.DeleteExascaleDbStorageVaultRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).delete_exascale_db_storage_vault._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["name"] = "name_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).delete_exascale_db_storage_vault._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set(("request_id",)) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "delete", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.delete_exascale_db_storage_vault(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_delete_exascale_db_storage_vault_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = ( + transport.delete_exascale_db_storage_vault._get_unset_required_fields({}) + ) + assert set(unset_fields) == (set(("requestId",)) & set(("name",))) + + +def test_delete_exascale_db_storage_vault_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/exascaleDbStorageVaults/sample3" + } + + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.delete_exascale_db_storage_vault(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/exascaleDbStorageVaults/*}" + % client.transport._host, + args[1], + ) + + +def test_delete_exascale_db_storage_vault_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.delete_exascale_db_storage_vault( + exascale_db_storage_vault.DeleteExascaleDbStorageVaultRequest(), + name="name_value", + ) + + +def test_list_db_system_initial_storage_sizes_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.list_db_system_initial_storage_sizes + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.list_db_system_initial_storage_sizes + ] = mock_rpc + + request = {} + client.list_db_system_initial_storage_sizes(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.list_db_system_initial_storage_sizes(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_list_db_system_initial_storage_sizes_rest_required_fields( + request_type=db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["parent"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_db_system_initial_storage_sizes._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["parent"] = "parent_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_db_system_initial_storage_sizes._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "page_size", + "page_token", + ) + ) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = ( + db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse() + ) + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.list_db_system_initial_storage_sizes(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_list_db_system_initial_storage_sizes_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = ( + transport.list_db_system_initial_storage_sizes._get_unset_required_fields({}) + ) + assert set(unset_fields) == ( + set( + ( + "pageSize", + "pageToken", + ) + ) + & set(("parent",)) + ) + + +def test_list_db_system_initial_storage_sizes_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = ( + db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse() + ) + + # get arguments that satisfy an http rule for this method + sample_request = {"parent": "projects/sample1/locations/sample2"} + + # get truthy value for each flattened field + mock_args = dict( + parent="parent_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = ( + db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse.pb( + return_value + ) + ) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.list_db_system_initial_storage_sizes(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{parent=projects/*/locations/*}/dbSystemInitialStorageSizes" + % client.transport._host, + args[1], + ) + + +def test_list_db_system_initial_storage_sizes_rest_flattened_error( + transport: str = "rest", +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.list_db_system_initial_storage_sizes( + db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest(), + parent="parent_value", + ) + + +def test_list_db_system_initial_storage_sizes_rest_pager(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse( + db_system_initial_storage_sizes=[ + db_system_initial_storage_size.DbSystemInitialStorageSize(), + db_system_initial_storage_size.DbSystemInitialStorageSize(), + db_system_initial_storage_size.DbSystemInitialStorageSize(), + ], + next_page_token="abc", + ), + db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse( + db_system_initial_storage_sizes=[], + next_page_token="def", + ), + db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse( + db_system_initial_storage_sizes=[ + db_system_initial_storage_size.DbSystemInitialStorageSize(), + ], + next_page_token="ghi", + ), + db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse( + db_system_initial_storage_sizes=[ + db_system_initial_storage_size.DbSystemInitialStorageSize(), + db_system_initial_storage_size.DbSystemInitialStorageSize(), + ], + ), + ) + # Two responses for two calls + response = response + response + + # Wrap the values into proper Response objs + response = tuple( + db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse.to_json( + x + ) + for x in response + ) + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values + + sample_request = {"parent": "projects/sample1/locations/sample2"} + + pager = client.list_db_system_initial_storage_sizes(request=sample_request) + + results = list(pager) + assert len(results) == 6 + assert all( + isinstance(i, db_system_initial_storage_size.DbSystemInitialStorageSize) + for i in results + ) + + pages = list( + client.list_db_system_initial_storage_sizes(request=sample_request).pages + ) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token + + +def test_list_databases_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert client._transport.list_databases in client._transport._wrapped_methods + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[client._transport.list_databases] = mock_rpc + + request = {} + client.list_databases(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.list_databases(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_list_databases_rest_required_fields( + request_type=database.ListDatabasesRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["parent"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_databases._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["parent"] = "parent_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_databases._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "filter", + "page_size", + "page_token", + ) + ) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = database.ListDatabasesResponse() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = database.ListDatabasesResponse.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.list_databases(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_list_databases_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.list_databases._get_unset_required_fields({}) + assert set(unset_fields) == ( + set( + ( + "filter", + "pageSize", + "pageToken", + ) + ) + & set(("parent",)) + ) + + +def test_list_databases_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = database.ListDatabasesResponse() + + # get arguments that satisfy an http rule for this method + sample_request = {"parent": "projects/sample1/locations/sample2"} + + # get truthy value for each flattened field + mock_args = dict( + parent="parent_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = database.ListDatabasesResponse.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.list_databases(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{parent=projects/*/locations/*}/databases" % client.transport._host, + args[1], + ) + + +def test_list_databases_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.list_databases( + database.ListDatabasesRequest(), + parent="parent_value", + ) + + +def test_list_databases_rest_pager(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + database.ListDatabasesResponse( + databases=[ + database.Database(), + database.Database(), + database.Database(), + ], + next_page_token="abc", + ), + database.ListDatabasesResponse( + databases=[], + next_page_token="def", + ), + database.ListDatabasesResponse( + databases=[ + database.Database(), + ], + next_page_token="ghi", + ), + database.ListDatabasesResponse( + databases=[ + database.Database(), + database.Database(), + ], + ), + ) + # Two responses for two calls + response = response + response + + # Wrap the values into proper Response objs + response = tuple(database.ListDatabasesResponse.to_json(x) for x in response) + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values + + sample_request = {"parent": "projects/sample1/locations/sample2"} + + pager = client.list_databases(request=sample_request) + + results = list(pager) + assert len(results) == 6 + assert all(isinstance(i, database.Database) for i in results) + + pages = list(client.list_databases(request=sample_request).pages) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token + + +def test_get_database_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert client._transport.get_database in client._transport._wrapped_methods + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[client._transport.get_database] = mock_rpc + + request = {} + client.get_database(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.get_database(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_get_database_rest_required_fields(request_type=database.GetDatabaseRequest): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_database._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["name"] = "name_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_database._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = database.Database() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = database.Database.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.get_database(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_get_database_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.get_database._get_unset_required_fields({}) + assert set(unset_fields) == (set(()) & set(("name",))) + + +def test_get_database_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = database.Database() + + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/databases/sample3" + } + + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = database.Database.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.get_database(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/databases/*}" % client.transport._host, + args[1], + ) + + +def test_get_database_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.get_database( + database.GetDatabaseRequest(), + name="name_value", + ) + + +def test_list_pluggable_databases_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.list_pluggable_databases + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.list_pluggable_databases + ] = mock_rpc + + request = {} + client.list_pluggable_databases(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.list_pluggable_databases(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_list_pluggable_databases_rest_required_fields( + request_type=pluggable_database.ListPluggableDatabasesRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["parent"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_pluggable_databases._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["parent"] = "parent_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_pluggable_databases._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "filter", + "page_size", + "page_token", + ) + ) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = pluggable_database.ListPluggableDatabasesResponse() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = pluggable_database.ListPluggableDatabasesResponse.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.list_pluggable_databases(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_list_pluggable_databases_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.list_pluggable_databases._get_unset_required_fields({}) + assert set(unset_fields) == ( + set( + ( + "filter", + "pageSize", + "pageToken", + ) + ) + & set(("parent",)) + ) + + +def test_list_pluggable_databases_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = pluggable_database.ListPluggableDatabasesResponse() + + # get arguments that satisfy an http rule for this method + sample_request = {"parent": "projects/sample1/locations/sample2"} + + # get truthy value for each flattened field + mock_args = dict( + parent="parent_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = pluggable_database.ListPluggableDatabasesResponse.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.list_pluggable_databases(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{parent=projects/*/locations/*}/pluggableDatabases" + % client.transport._host, + args[1], + ) + + +def test_list_pluggable_databases_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.list_pluggable_databases( + pluggable_database.ListPluggableDatabasesRequest(), + parent="parent_value", + ) + + +def test_list_pluggable_databases_rest_pager(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + pluggable_database.ListPluggableDatabasesResponse( + pluggable_databases=[ + pluggable_database.PluggableDatabase(), + pluggable_database.PluggableDatabase(), + pluggable_database.PluggableDatabase(), + ], + next_page_token="abc", + ), + pluggable_database.ListPluggableDatabasesResponse( + pluggable_databases=[], + next_page_token="def", + ), + pluggable_database.ListPluggableDatabasesResponse( + pluggable_databases=[ + pluggable_database.PluggableDatabase(), + ], + next_page_token="ghi", + ), + pluggable_database.ListPluggableDatabasesResponse( + pluggable_databases=[ + pluggable_database.PluggableDatabase(), + pluggable_database.PluggableDatabase(), + ], + ), + ) + # Two responses for two calls + response = response + response + + # Wrap the values into proper Response objs + response = tuple( + pluggable_database.ListPluggableDatabasesResponse.to_json(x) + for x in response + ) + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values + + sample_request = {"parent": "projects/sample1/locations/sample2"} + + pager = client.list_pluggable_databases(request=sample_request) + + results = list(pager) + assert len(results) == 6 + assert all(isinstance(i, pluggable_database.PluggableDatabase) for i in results) + + pages = list(client.list_pluggable_databases(request=sample_request).pages) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token + + +def test_get_pluggable_database_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.get_pluggable_database + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[client._transport.get_pluggable_database] = ( + mock_rpc + ) + + request = {} + client.get_pluggable_database(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.get_pluggable_database(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_get_pluggable_database_rest_required_fields( + request_type=pluggable_database.GetPluggableDatabaseRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_pluggable_database._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["name"] = "name_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_pluggable_database._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = pluggable_database.PluggableDatabase() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = pluggable_database.PluggableDatabase.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.get_pluggable_database(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_get_pluggable_database_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.get_pluggable_database._get_unset_required_fields({}) + assert set(unset_fields) == (set(()) & set(("name",))) + + +def test_get_pluggable_database_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = pluggable_database.PluggableDatabase() + + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/pluggableDatabases/sample3" + } + + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = pluggable_database.PluggableDatabase.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.get_pluggable_database(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/pluggableDatabases/*}" + % client.transport._host, + args[1], + ) + + +def test_get_pluggable_database_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.get_pluggable_database( + pluggable_database.GetPluggableDatabaseRequest(), + name="name_value", + ) + + +def test_list_db_systems_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert client._transport.list_db_systems in client._transport._wrapped_methods + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[client._transport.list_db_systems] = mock_rpc + + request = {} + client.list_db_systems(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.list_db_systems(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_list_db_systems_rest_required_fields( + request_type=db_system.ListDbSystemsRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["parent"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_db_systems._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["parent"] = "parent_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_db_systems._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "filter", + "order_by", + "page_size", + "page_token", + ) + ) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = db_system.ListDbSystemsResponse() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = db_system.ListDbSystemsResponse.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.list_db_systems(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_list_db_systems_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.list_db_systems._get_unset_required_fields({}) + assert set(unset_fields) == ( + set( + ( + "filter", + "orderBy", + "pageSize", + "pageToken", + ) + ) + & set(("parent",)) + ) + + +def test_list_db_systems_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = db_system.ListDbSystemsResponse() + + # get arguments that satisfy an http rule for this method + sample_request = {"parent": "projects/sample1/locations/sample2"} + + # get truthy value for each flattened field + mock_args = dict( + parent="parent_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = db_system.ListDbSystemsResponse.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.list_db_systems(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{parent=projects/*/locations/*}/dbSystems" % client.transport._host, + args[1], + ) + + +def test_list_db_systems_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.list_db_systems( + db_system.ListDbSystemsRequest(), + parent="parent_value", + ) + + +def test_list_db_systems_rest_pager(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + db_system.ListDbSystemsResponse( + db_systems=[ + db_system.DbSystem(), + db_system.DbSystem(), + db_system.DbSystem(), + ], + next_page_token="abc", + ), + db_system.ListDbSystemsResponse( + db_systems=[], + next_page_token="def", + ), + db_system.ListDbSystemsResponse( + db_systems=[ + db_system.DbSystem(), + ], + next_page_token="ghi", + ), + db_system.ListDbSystemsResponse( + db_systems=[ + db_system.DbSystem(), + db_system.DbSystem(), + ], + ), + ) + # Two responses for two calls + response = response + response + + # Wrap the values into proper Response objs + response = tuple(db_system.ListDbSystemsResponse.to_json(x) for x in response) + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values + + sample_request = {"parent": "projects/sample1/locations/sample2"} + + pager = client.list_db_systems(request=sample_request) + + results = list(pager) + assert len(results) == 6 + assert all(isinstance(i, db_system.DbSystem) for i in results) + + pages = list(client.list_db_systems(request=sample_request).pages) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token + + +def test_get_db_system_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert client._transport.get_db_system in client._transport._wrapped_methods + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[client._transport.get_db_system] = mock_rpc + + request = {} + client.get_db_system(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.get_db_system(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_get_db_system_rest_required_fields(request_type=db_system.GetDbSystemRequest): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_db_system._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["name"] = "name_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_db_system._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = db_system.DbSystem() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = db_system.DbSystem.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.get_db_system(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_get_db_system_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.get_db_system._get_unset_required_fields({}) + assert set(unset_fields) == (set(()) & set(("name",))) + + +def test_get_db_system_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = db_system.DbSystem() + + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/dbSystems/sample3" + } + + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = db_system.DbSystem.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.get_db_system(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/dbSystems/*}" % client.transport._host, + args[1], + ) + + +def test_get_db_system_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.get_db_system( + db_system.GetDbSystemRequest(), + name="name_value", + ) + + +def test_create_db_system_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert client._transport.create_db_system in client._transport._wrapped_methods + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[client._transport.create_db_system] = ( + mock_rpc + ) + + request = {} + client.create_db_system(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.create_db_system(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_create_db_system_rest_required_fields( + request_type=gco_db_system.CreateDbSystemRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["parent"] = "" + request_init["db_system_id"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + assert "dbSystemId" not in jsonified_request + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).create_db_system._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + assert "dbSystemId" in jsonified_request + assert jsonified_request["dbSystemId"] == request_init["db_system_id"] + + jsonified_request["parent"] = "parent_value" + jsonified_request["dbSystemId"] = "db_system_id_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).create_db_system._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "db_system_id", + "request_id", + ) + ) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + assert "dbSystemId" in jsonified_request + assert jsonified_request["dbSystemId"] == "db_system_id_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "post", + "query_params": pb_request, + } + transcode_result["body"] = pb_request + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.create_db_system(request) + + expected_params = [ + ( + "dbSystemId", + "", + ), + ("$alt", "json;enum-encoding=int"), + ] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_create_db_system_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.create_db_system._get_unset_required_fields({}) + assert set(unset_fields) == ( + set( + ( + "dbSystemId", + "requestId", + ) + ) + & set( + ( + "parent", + "dbSystemId", + "dbSystem", + ) + ) + ) + + +def test_create_db_system_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # get arguments that satisfy an http rule for this method + sample_request = {"parent": "projects/sample1/locations/sample2"} + + # get truthy value for each flattened field + mock_args = dict( + parent="parent_value", + db_system=gco_db_system.DbSystem(name="name_value"), + db_system_id="db_system_id_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.create_db_system(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{parent=projects/*/locations/*}/dbSystems" % client.transport._host, + args[1], + ) + + +def test_create_db_system_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.create_db_system( + gco_db_system.CreateDbSystemRequest(), + parent="parent_value", + db_system=gco_db_system.DbSystem(name="name_value"), + db_system_id="db_system_id_value", + ) + + +def test_delete_db_system_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert client._transport.delete_db_system in client._transport._wrapped_methods + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[client._transport.delete_db_system] = ( + mock_rpc + ) + + request = {} + client.delete_db_system(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.delete_db_system(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_delete_db_system_rest_required_fields( + request_type=db_system.DeleteDbSystemRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).delete_db_system._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["name"] = "name_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).delete_db_system._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set(("request_id",)) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "delete", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.delete_db_system(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_delete_db_system_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.delete_db_system._get_unset_required_fields({}) + assert set(unset_fields) == (set(("requestId",)) & set(("name",))) + + +def test_delete_db_system_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/dbSystems/sample3" + } + + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.delete_db_system(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/dbSystems/*}" % client.transport._host, + args[1], + ) + + +def test_delete_db_system_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.delete_db_system( + db_system.DeleteDbSystemRequest(), + name="name_value", + ) + + +def test_list_goldengate_deployments_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.list_goldengate_deployments + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.list_goldengate_deployments + ] = mock_rpc + + request = {} + client.list_goldengate_deployments(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.list_goldengate_deployments(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_list_goldengate_deployments_rest_required_fields( + request_type=goldengate_deployment.ListGoldengateDeploymentsRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["parent"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_goldengate_deployments._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["parent"] = "parent_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_goldengate_deployments._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "filter", + "order_by", + "page_size", + "page_token", + ) + ) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = goldengate_deployment.ListGoldengateDeploymentsResponse() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = goldengate_deployment.ListGoldengateDeploymentsResponse.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.list_goldengate_deployments(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_list_goldengate_deployments_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.list_goldengate_deployments._get_unset_required_fields({}) + assert set(unset_fields) == ( + set( + ( + "filter", + "orderBy", + "pageSize", + "pageToken", + ) + ) + & set(("parent",)) + ) + + +def test_list_goldengate_deployments_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = goldengate_deployment.ListGoldengateDeploymentsResponse() + + # get arguments that satisfy an http rule for this method + sample_request = {"parent": "projects/sample1/locations/sample2"} + + # get truthy value for each flattened field + mock_args = dict( + parent="parent_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = goldengate_deployment.ListGoldengateDeploymentsResponse.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.list_goldengate_deployments(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{parent=projects/*/locations/*}/goldengateDeployments" + % client.transport._host, + args[1], + ) + + +def test_list_goldengate_deployments_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.list_goldengate_deployments( + goldengate_deployment.ListGoldengateDeploymentsRequest(), + parent="parent_value", + ) + + +def test_list_goldengate_deployments_rest_pager(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + goldengate_deployment.ListGoldengateDeploymentsResponse( + goldengate_deployments=[ + goldengate_deployment.GoldengateDeployment(), + goldengate_deployment.GoldengateDeployment(), + goldengate_deployment.GoldengateDeployment(), + ], + next_page_token="abc", + ), + goldengate_deployment.ListGoldengateDeploymentsResponse( + goldengate_deployments=[], + next_page_token="def", + ), + goldengate_deployment.ListGoldengateDeploymentsResponse( + goldengate_deployments=[ + goldengate_deployment.GoldengateDeployment(), + ], + next_page_token="ghi", + ), + goldengate_deployment.ListGoldengateDeploymentsResponse( + goldengate_deployments=[ + goldengate_deployment.GoldengateDeployment(), + goldengate_deployment.GoldengateDeployment(), + ], + ), + ) + # Two responses for two calls + response = response + response + + # Wrap the values into proper Response objs + response = tuple( + goldengate_deployment.ListGoldengateDeploymentsResponse.to_json(x) + for x in response + ) + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values + + sample_request = {"parent": "projects/sample1/locations/sample2"} + + pager = client.list_goldengate_deployments(request=sample_request) + + results = list(pager) + assert len(results) == 6 + assert all( + isinstance(i, goldengate_deployment.GoldengateDeployment) for i in results + ) + + pages = list(client.list_goldengate_deployments(request=sample_request).pages) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token + + +def test_get_goldengate_deployment_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.get_goldengate_deployment + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.get_goldengate_deployment + ] = mock_rpc + + request = {} + client.get_goldengate_deployment(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.get_goldengate_deployment(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_get_goldengate_deployment_rest_required_fields( + request_type=goldengate_deployment.GetGoldengateDeploymentRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_goldengate_deployment._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["name"] = "name_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_goldengate_deployment._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = goldengate_deployment.GoldengateDeployment() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = goldengate_deployment.GoldengateDeployment.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.get_goldengate_deployment(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_get_goldengate_deployment_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.get_goldengate_deployment._get_unset_required_fields({}) + assert set(unset_fields) == (set(()) & set(("name",))) + + +def test_get_goldengate_deployment_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = goldengate_deployment.GoldengateDeployment() + + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/goldengateDeployments/sample3" + } + + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = goldengate_deployment.GoldengateDeployment.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.get_goldengate_deployment(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/goldengateDeployments/*}" + % client.transport._host, + args[1], + ) + + +def test_get_goldengate_deployment_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.get_goldengate_deployment( + goldengate_deployment.GetGoldengateDeploymentRequest(), + name="name_value", + ) + + +def test_create_goldengate_deployment_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.create_goldengate_deployment + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.create_goldengate_deployment + ] = mock_rpc + + request = {} + client.create_goldengate_deployment(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.create_goldengate_deployment(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_create_goldengate_deployment_rest_required_fields( + request_type=gco_goldengate_deployment.CreateGoldengateDeploymentRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["parent"] = "" + request_init["goldengate_deployment_id"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + assert "goldengateDeploymentId" not in jsonified_request + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).create_goldengate_deployment._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + assert "goldengateDeploymentId" in jsonified_request + assert ( + jsonified_request["goldengateDeploymentId"] + == request_init["goldengate_deployment_id"] + ) + + jsonified_request["parent"] = "parent_value" + jsonified_request["goldengateDeploymentId"] = "goldengate_deployment_id_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).create_goldengate_deployment._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "goldengate_deployment_id", + "request_id", + ) + ) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + assert "goldengateDeploymentId" in jsonified_request + assert ( + jsonified_request["goldengateDeploymentId"] == "goldengate_deployment_id_value" + ) + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "post", + "query_params": pb_request, + } + transcode_result["body"] = pb_request + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.create_goldengate_deployment(request) + + expected_params = [ + ( + "goldengateDeploymentId", + "", + ), + ("$alt", "json;enum-encoding=int"), + ] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_create_goldengate_deployment_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.create_goldengate_deployment._get_unset_required_fields({}) + assert set(unset_fields) == ( + set( + ( + "goldengateDeploymentId", + "requestId", + ) + ) + & set( + ( + "parent", + "goldengateDeploymentId", + "goldengateDeployment", + ) + ) + ) + + +def test_create_goldengate_deployment_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # get arguments that satisfy an http rule for this method + sample_request = {"parent": "projects/sample1/locations/sample2"} + + # get truthy value for each flattened field + mock_args = dict( + parent="parent_value", + goldengate_deployment=gco_goldengate_deployment.GoldengateDeployment( + name="name_value" + ), + goldengate_deployment_id="goldengate_deployment_id_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.create_goldengate_deployment(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{parent=projects/*/locations/*}/goldengateDeployments" + % client.transport._host, + args[1], + ) + + +def test_create_goldengate_deployment_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.create_goldengate_deployment( + gco_goldengate_deployment.CreateGoldengateDeploymentRequest(), + parent="parent_value", + goldengate_deployment=gco_goldengate_deployment.GoldengateDeployment( + name="name_value" + ), + goldengate_deployment_id="goldengate_deployment_id_value", + ) + + +def test_delete_goldengate_deployment_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.delete_goldengate_deployment + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.delete_goldengate_deployment + ] = mock_rpc + + request = {} + client.delete_goldengate_deployment(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.delete_goldengate_deployment(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_delete_goldengate_deployment_rest_required_fields( + request_type=goldengate_deployment.DeleteGoldengateDeploymentRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).delete_goldengate_deployment._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["name"] = "name_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).delete_goldengate_deployment._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set(("request_id",)) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "delete", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.delete_goldengate_deployment(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_delete_goldengate_deployment_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.delete_goldengate_deployment._get_unset_required_fields({}) + assert set(unset_fields) == (set(("requestId",)) & set(("name",))) + + +def test_delete_goldengate_deployment_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/goldengateDeployments/sample3" + } + + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.delete_goldengate_deployment(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/goldengateDeployments/*}" + % client.transport._host, + args[1], + ) + + +def test_delete_goldengate_deployment_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.delete_goldengate_deployment( + goldengate_deployment.DeleteGoldengateDeploymentRequest(), + name="name_value", + ) + + +def test_stop_goldengate_deployment_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.stop_goldengate_deployment + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.stop_goldengate_deployment + ] = mock_rpc + + request = {} + client.stop_goldengate_deployment(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.stop_goldengate_deployment(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_stop_goldengate_deployment_rest_required_fields( + request_type=goldengate_deployment.StopGoldengateDeploymentRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).stop_goldengate_deployment._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["name"] = "name_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).stop_goldengate_deployment._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "post", + "query_params": pb_request, + } + transcode_result["body"] = pb_request + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.stop_goldengate_deployment(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_stop_goldengate_deployment_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.stop_goldengate_deployment._get_unset_required_fields({}) + assert set(unset_fields) == (set(()) & set(("name",))) + + +def test_stop_goldengate_deployment_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/goldengateDeployments/sample3" + } + + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.stop_goldengate_deployment(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/goldengateDeployments/*}:stop" + % client.transport._host, + args[1], + ) + + +def test_stop_goldengate_deployment_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.stop_goldengate_deployment( + goldengate_deployment.StopGoldengateDeploymentRequest(), + name="name_value", + ) + + +def test_start_goldengate_deployment_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.start_goldengate_deployment + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.start_goldengate_deployment + ] = mock_rpc + + request = {} + client.start_goldengate_deployment(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.start_goldengate_deployment(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_start_goldengate_deployment_rest_required_fields( + request_type=goldengate_deployment.StartGoldengateDeploymentRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).start_goldengate_deployment._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["name"] = "name_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).start_goldengate_deployment._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "post", + "query_params": pb_request, + } + transcode_result["body"] = pb_request + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.start_goldengate_deployment(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_start_goldengate_deployment_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.start_goldengate_deployment._get_unset_required_fields({}) + assert set(unset_fields) == (set(()) & set(("name",))) + + +def test_start_goldengate_deployment_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/goldengateDeployments/sample3" + } + + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.start_goldengate_deployment(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/goldengateDeployments/*}:start" + % client.transport._host, + args[1], + ) + + +def test_start_goldengate_deployment_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.start_goldengate_deployment( + goldengate_deployment.StartGoldengateDeploymentRequest(), + name="name_value", + ) + + +def test_list_goldengate_connections_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.list_goldengate_connections + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.list_goldengate_connections + ] = mock_rpc + + request = {} + client.list_goldengate_connections(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.list_goldengate_connections(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_list_goldengate_connections_rest_required_fields( + request_type=goldengate_connection.ListGoldengateConnectionsRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["parent"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_goldengate_connections._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["parent"] = "parent_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_goldengate_connections._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "filter", + "order_by", + "page_size", + "page_token", + ) + ) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = goldengate_connection.ListGoldengateConnectionsResponse() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = goldengate_connection.ListGoldengateConnectionsResponse.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.list_goldengate_connections(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_list_goldengate_connections_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.list_goldengate_connections._get_unset_required_fields({}) + assert set(unset_fields) == ( + set( + ( + "filter", + "orderBy", + "pageSize", + "pageToken", + ) + ) + & set(("parent",)) + ) + + +def test_list_goldengate_connections_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = goldengate_connection.ListGoldengateConnectionsResponse() + + # get arguments that satisfy an http rule for this method + sample_request = {"parent": "projects/sample1/locations/sample2"} + + # get truthy value for each flattened field + mock_args = dict( + parent="parent_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = goldengate_connection.ListGoldengateConnectionsResponse.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.list_goldengate_connections(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{parent=projects/*/locations/*}/goldengateConnections" + % client.transport._host, + args[1], + ) + + +def test_list_goldengate_connections_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.list_goldengate_connections( + goldengate_connection.ListGoldengateConnectionsRequest(), + parent="parent_value", + ) + + +def test_list_goldengate_connections_rest_pager(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + goldengate_connection.ListGoldengateConnectionsResponse( + goldengate_connections=[ + goldengate_connection.GoldengateConnection(), + goldengate_connection.GoldengateConnection(), + goldengate_connection.GoldengateConnection(), + ], + next_page_token="abc", + ), + goldengate_connection.ListGoldengateConnectionsResponse( + goldengate_connections=[], + next_page_token="def", + ), + goldengate_connection.ListGoldengateConnectionsResponse( + goldengate_connections=[ + goldengate_connection.GoldengateConnection(), + ], + next_page_token="ghi", + ), + goldengate_connection.ListGoldengateConnectionsResponse( + goldengate_connections=[ + goldengate_connection.GoldengateConnection(), + goldengate_connection.GoldengateConnection(), + ], + ), + ) + # Two responses for two calls + response = response + response + + # Wrap the values into proper Response objs + response = tuple( + goldengate_connection.ListGoldengateConnectionsResponse.to_json(x) + for x in response + ) + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values + + sample_request = {"parent": "projects/sample1/locations/sample2"} + + pager = client.list_goldengate_connections(request=sample_request) + + results = list(pager) + assert len(results) == 6 + assert all( + isinstance(i, goldengate_connection.GoldengateConnection) for i in results + ) + + pages = list(client.list_goldengate_connections(request=sample_request).pages) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token + + +def test_get_goldengate_connection_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.get_goldengate_connection + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.get_goldengate_connection + ] = mock_rpc + + request = {} + client.get_goldengate_connection(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.get_goldengate_connection(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_get_goldengate_connection_rest_required_fields( + request_type=goldengate_connection.GetGoldengateConnectionRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_goldengate_connection._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["name"] = "name_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_goldengate_connection._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = goldengate_connection.GoldengateConnection() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = goldengate_connection.GoldengateConnection.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.get_goldengate_connection(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_get_goldengate_connection_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.get_goldengate_connection._get_unset_required_fields({}) + assert set(unset_fields) == (set(()) & set(("name",))) + + +def test_get_goldengate_connection_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = goldengate_connection.GoldengateConnection() + + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/goldengateConnections/sample3" + } + + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = goldengate_connection.GoldengateConnection.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.get_goldengate_connection(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/goldengateConnections/*}" + % client.transport._host, + args[1], + ) + + +def test_get_goldengate_connection_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.get_goldengate_connection( + goldengate_connection.GetGoldengateConnectionRequest(), + name="name_value", + ) + + +def test_create_goldengate_connection_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.create_goldengate_connection + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.create_goldengate_connection + ] = mock_rpc + + request = {} + client.create_goldengate_connection(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.create_goldengate_connection(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_create_goldengate_connection_rest_required_fields( + request_type=gco_goldengate_connection.CreateGoldengateConnectionRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["parent"] = "" + request_init["goldengate_connection_id"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + assert "goldengateConnectionId" not in jsonified_request + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).create_goldengate_connection._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + assert "goldengateConnectionId" in jsonified_request + assert ( + jsonified_request["goldengateConnectionId"] + == request_init["goldengate_connection_id"] + ) + + jsonified_request["parent"] = "parent_value" + jsonified_request["goldengateConnectionId"] = "goldengate_connection_id_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).create_goldengate_connection._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "goldengate_connection_id", + "request_id", + ) + ) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + assert "goldengateConnectionId" in jsonified_request + assert ( + jsonified_request["goldengateConnectionId"] == "goldengate_connection_id_value" + ) + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "post", + "query_params": pb_request, + } + transcode_result["body"] = pb_request + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.create_goldengate_connection(request) + + expected_params = [ + ( + "goldengateConnectionId", + "", + ), + ("$alt", "json;enum-encoding=int"), + ] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_create_goldengate_connection_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.create_goldengate_connection._get_unset_required_fields({}) + assert set(unset_fields) == ( + set( + ( + "goldengateConnectionId", + "requestId", + ) + ) + & set( + ( + "parent", + "goldengateConnectionId", + "goldengateConnection", + ) + ) + ) + + +def test_create_goldengate_connection_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # get arguments that satisfy an http rule for this method + sample_request = {"parent": "projects/sample1/locations/sample2"} + + # get truthy value for each flattened field + mock_args = dict( + parent="parent_value", + goldengate_connection=gco_goldengate_connection.GoldengateConnection( + name="name_value" + ), + goldengate_connection_id="goldengate_connection_id_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.create_goldengate_connection(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{parent=projects/*/locations/*}/goldengateConnections" + % client.transport._host, + args[1], + ) + + +def test_create_goldengate_connection_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.create_goldengate_connection( + gco_goldengate_connection.CreateGoldengateConnectionRequest(), + parent="parent_value", + goldengate_connection=gco_goldengate_connection.GoldengateConnection( + name="name_value" + ), + goldengate_connection_id="goldengate_connection_id_value", + ) + + +def test_delete_goldengate_connection_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.delete_goldengate_connection + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.delete_goldengate_connection + ] = mock_rpc + + request = {} + client.delete_goldengate_connection(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.delete_goldengate_connection(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_delete_goldengate_connection_rest_required_fields( + request_type=goldengate_connection.DeleteGoldengateConnectionRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).delete_goldengate_connection._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["name"] = "name_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).delete_goldengate_connection._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set(("request_id",)) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "delete", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.delete_goldengate_connection(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_delete_goldengate_connection_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.delete_goldengate_connection._get_unset_required_fields({}) + assert set(unset_fields) == (set(("requestId",)) & set(("name",))) + + +def test_delete_goldengate_connection_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/goldengateConnections/sample3" + } + + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.delete_goldengate_connection(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/goldengateConnections/*}" + % client.transport._host, + args[1], + ) + + +def test_delete_goldengate_connection_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.delete_goldengate_connection( + goldengate_connection.DeleteGoldengateConnectionRequest(), + name="name_value", + ) + + +def test_get_goldengate_deployment_version_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.get_goldengate_deployment_version + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.get_goldengate_deployment_version + ] = mock_rpc + + request = {} + client.get_goldengate_deployment_version(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.get_goldengate_deployment_version(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_get_goldengate_deployment_version_rest_required_fields( + request_type=goldengate_deployment_version.GetGoldengateDeploymentVersionRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_goldengate_deployment_version._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["name"] = "name_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_goldengate_deployment_version._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = goldengate_deployment_version.GoldengateDeploymentVersion() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = goldengate_deployment_version.GoldengateDeploymentVersion.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.get_goldengate_deployment_version(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_get_goldengate_deployment_version_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = ( + transport.get_goldengate_deployment_version._get_unset_required_fields({}) + ) + assert set(unset_fields) == (set(()) & set(("name",))) + + +def test_get_goldengate_deployment_version_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = goldengate_deployment_version.GoldengateDeploymentVersion() + + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/goldengateDeploymentVersions/sample3" + } + + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = goldengate_deployment_version.GoldengateDeploymentVersion.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.get_goldengate_deployment_version(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/goldengateDeploymentVersions/*}" + % client.transport._host, + args[1], + ) + + +def test_get_goldengate_deployment_version_rest_flattened_error( + transport: str = "rest", +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.get_goldengate_deployment_version( + goldengate_deployment_version.GetGoldengateDeploymentVersionRequest(), + name="name_value", + ) + + +def test_list_goldengate_deployment_versions_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.list_goldengate_deployment_versions + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.list_goldengate_deployment_versions + ] = mock_rpc + + request = {} + client.list_goldengate_deployment_versions(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.list_goldengate_deployment_versions(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_list_goldengate_deployment_versions_rest_required_fields( + request_type=goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["parent"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_goldengate_deployment_versions._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["parent"] = "parent_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_goldengate_deployment_versions._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "filter", + "page_size", + "page_token", + ) + ) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse() + ) + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.list_goldengate_deployment_versions(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_list_goldengate_deployment_versions_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = ( + transport.list_goldengate_deployment_versions._get_unset_required_fields({}) + ) + assert set(unset_fields) == ( + set( + ( + "filter", + "pageSize", + "pageToken", + ) + ) + & set(("parent",)) + ) + + +def test_list_goldengate_deployment_versions_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse() + ) + + # get arguments that satisfy an http rule for this method + sample_request = {"parent": "projects/sample1/locations/sample2"} + + # get truthy value for each flattened field + mock_args = dict( + parent="parent_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse.pb( + return_value + ) + ) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.list_goldengate_deployment_versions(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{parent=projects/*/locations/*}/goldengateDeploymentVersions" + % client.transport._host, + args[1], + ) + + +def test_list_goldengate_deployment_versions_rest_flattened_error( + transport: str = "rest", +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.list_goldengate_deployment_versions( + goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest(), + parent="parent_value", + ) + + +def test_list_goldengate_deployment_versions_rest_pager(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse( + goldengate_deployment_versions=[ + goldengate_deployment_version.GoldengateDeploymentVersion(), + goldengate_deployment_version.GoldengateDeploymentVersion(), + goldengate_deployment_version.GoldengateDeploymentVersion(), + ], + next_page_token="abc", + ), + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse( + goldengate_deployment_versions=[], + next_page_token="def", + ), + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse( + goldengate_deployment_versions=[ + goldengate_deployment_version.GoldengateDeploymentVersion(), + ], + next_page_token="ghi", + ), + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse( + goldengate_deployment_versions=[ + goldengate_deployment_version.GoldengateDeploymentVersion(), + goldengate_deployment_version.GoldengateDeploymentVersion(), + ], + ), + ) + # Two responses for two calls + response = response + response + + # Wrap the values into proper Response objs + response = tuple( + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse.to_json( + x + ) + for x in response + ) + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values + + sample_request = {"parent": "projects/sample1/locations/sample2"} + + pager = client.list_goldengate_deployment_versions(request=sample_request) + + results = list(pager) + assert len(results) == 6 + assert all( + isinstance(i, goldengate_deployment_version.GoldengateDeploymentVersion) + for i in results + ) + + pages = list( + client.list_goldengate_deployment_versions(request=sample_request).pages + ) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token + + +def test_get_goldengate_deployment_type_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.get_goldengate_deployment_type + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.get_goldengate_deployment_type + ] = mock_rpc + + request = {} + client.get_goldengate_deployment_type(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.get_goldengate_deployment_type(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_get_goldengate_deployment_type_rest_required_fields( + request_type=goldengate_deployment_type.GetGoldengateDeploymentTypeRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_goldengate_deployment_type._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["name"] = "name_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_goldengate_deployment_type._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = goldengate_deployment_type.GoldengateDeploymentType() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = goldengate_deployment_type.GoldengateDeploymentType.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.get_goldengate_deployment_type(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_get_goldengate_deployment_type_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.get_goldengate_deployment_type._get_unset_required_fields( + {} + ) + assert set(unset_fields) == (set(()) & set(("name",))) + + +def test_get_goldengate_deployment_type_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = goldengate_deployment_type.GoldengateDeploymentType() + + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/goldengateDeploymentTypes/sample3" + } + + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = goldengate_deployment_type.GoldengateDeploymentType.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.get_goldengate_deployment_type(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/goldengateDeploymentTypes/*}" + % client.transport._host, + args[1], + ) + + +def test_get_goldengate_deployment_type_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.get_goldengate_deployment_type( + goldengate_deployment_type.GetGoldengateDeploymentTypeRequest(), + name="name_value", + ) + + +def test_list_goldengate_deployment_types_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.list_goldengate_deployment_types + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.list_goldengate_deployment_types + ] = mock_rpc + + request = {} + client.list_goldengate_deployment_types(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.list_goldengate_deployment_types(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_list_goldengate_deployment_types_rest_required_fields( + request_type=goldengate_deployment_type.ListGoldengateDeploymentTypesRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["parent"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_goldengate_deployment_types._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["parent"] = "parent_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_goldengate_deployment_types._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "filter", + "order_by", + "page_size", + "page_token", + ) + ) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = goldengate_deployment_type.ListGoldengateDeploymentTypesResponse() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = ( + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse.pb( + return_value + ) + ) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.list_goldengate_deployment_types(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_list_goldengate_deployment_types_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = ( + transport.list_goldengate_deployment_types._get_unset_required_fields({}) + ) + assert set(unset_fields) == ( + set( + ( + "filter", + "orderBy", + "pageSize", + "pageToken", + ) + ) + & set(("parent",)) + ) + + +def test_list_goldengate_deployment_types_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = ( + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse() + ) + + # get arguments that satisfy an http rule for this method + sample_request = {"parent": "projects/sample1/locations/sample2"} + + # get truthy value for each flattened field + mock_args = dict( + parent="parent_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = ( + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse.pb( + return_value + ) + ) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.list_goldengate_deployment_types(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{parent=projects/*/locations/*}/goldengateDeploymentTypes" + % client.transport._host, + args[1], + ) + + +def test_list_goldengate_deployment_types_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.list_goldengate_deployment_types( + goldengate_deployment_type.ListGoldengateDeploymentTypesRequest(), + parent="parent_value", + ) + + +def test_list_goldengate_deployment_types_rest_pager(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse( + goldengate_deployment_types=[ + goldengate_deployment_type.GoldengateDeploymentType(), + goldengate_deployment_type.GoldengateDeploymentType(), + goldengate_deployment_type.GoldengateDeploymentType(), + ], + next_page_token="abc", + ), + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse( + goldengate_deployment_types=[], + next_page_token="def", + ), + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse( + goldengate_deployment_types=[ + goldengate_deployment_type.GoldengateDeploymentType(), + ], + next_page_token="ghi", + ), + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse( + goldengate_deployment_types=[ + goldengate_deployment_type.GoldengateDeploymentType(), + goldengate_deployment_type.GoldengateDeploymentType(), + ], + ), + ) + # Two responses for two calls + response = response + response + + # Wrap the values into proper Response objs + response = tuple( + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse.to_json(x) + for x in response + ) + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values + + sample_request = {"parent": "projects/sample1/locations/sample2"} + + pager = client.list_goldengate_deployment_types(request=sample_request) + + results = list(pager) + assert len(results) == 6 + assert all( + isinstance(i, goldengate_deployment_type.GoldengateDeploymentType) + for i in results + ) + + pages = list( + client.list_goldengate_deployment_types(request=sample_request).pages + ) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token + + +def test_get_goldengate_deployment_environment_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.get_goldengate_deployment_environment + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.get_goldengate_deployment_environment + ] = mock_rpc + + request = {} + client.get_goldengate_deployment_environment(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.get_goldengate_deployment_environment(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_get_goldengate_deployment_environment_rest_required_fields( + request_type=goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_goldengate_deployment_environment._get_unset_required_fields( + jsonified_request + ) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["name"] = "name_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_goldengate_deployment_environment._get_unset_required_fields( + jsonified_request + ) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = goldengate_deployment_environment.GoldengateDeploymentEnvironment() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = ( + goldengate_deployment_environment.GoldengateDeploymentEnvironment.pb( + return_value + ) + ) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.get_goldengate_deployment_environment(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_get_goldengate_deployment_environment_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = ( + transport.get_goldengate_deployment_environment._get_unset_required_fields({}) + ) + assert set(unset_fields) == (set(()) & set(("name",))) + + +def test_get_goldengate_deployment_environment_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = ( + goldengate_deployment_environment.GoldengateDeploymentEnvironment() + ) + + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/goldengateDeploymentEnvironments/sample3" + } + + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = ( + goldengate_deployment_environment.GoldengateDeploymentEnvironment.pb( + return_value + ) + ) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.get_goldengate_deployment_environment(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/goldengateDeploymentEnvironments/*}" + % client.transport._host, + args[1], + ) + + +def test_get_goldengate_deployment_environment_rest_flattened_error( + transport: str = "rest", +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.get_goldengate_deployment_environment( + goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest(), + name="name_value", + ) + + +def test_list_goldengate_deployment_environments_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.list_goldengate_deployment_environments + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.list_goldengate_deployment_environments + ] = mock_rpc + + request = {} + client.list_goldengate_deployment_environments(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.list_goldengate_deployment_environments(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_list_goldengate_deployment_environments_rest_required_fields( + request_type=goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["parent"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_goldengate_deployment_environments._get_unset_required_fields( + jsonified_request + ) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["parent"] = "parent_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_goldengate_deployment_environments._get_unset_required_fields( + jsonified_request + ) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "page_size", + "page_token", + ) + ) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = ( + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse() + ) + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.list_goldengate_deployment_environments(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_list_goldengate_deployment_environments_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = ( + transport.list_goldengate_deployment_environments._get_unset_required_fields({}) + ) + assert set(unset_fields) == ( + set( + ( + "pageSize", + "pageToken", + ) + ) + & set(("parent",)) + ) + + +def test_list_goldengate_deployment_environments_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse() + + # get arguments that satisfy an http rule for this method + sample_request = {"parent": "projects/sample1/locations/sample2"} + + # get truthy value for each flattened field + mock_args = dict( + parent="parent_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.list_goldengate_deployment_environments(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{parent=projects/*/locations/*}/goldengateDeploymentEnvironments" + % client.transport._host, + args[1], + ) + + +def test_list_goldengate_deployment_environments_rest_flattened_error( + transport: str = "rest", +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.list_goldengate_deployment_environments( + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest(), + parent="parent_value", + ) + + +def test_list_goldengate_deployment_environments_rest_pager(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse( + goldengate_deployment_environments=[ + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + ], + next_page_token="abc", + ), + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse( + goldengate_deployment_environments=[], + next_page_token="def", + ), + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse( + goldengate_deployment_environments=[ + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + ], + next_page_token="ghi", + ), + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse( + goldengate_deployment_environments=[ + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + ], + ), + ) + # Two responses for two calls + response = response + response + + # Wrap the values into proper Response objs + response = tuple( + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse.to_json( + x + ) + for x in response + ) + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values + + sample_request = {"parent": "projects/sample1/locations/sample2"} + + pager = client.list_goldengate_deployment_environments(request=sample_request) + + results = list(pager) + assert len(results) == 6 + assert all( + isinstance( + i, goldengate_deployment_environment.GoldengateDeploymentEnvironment + ) + for i in results + ) + + pages = list( + client.list_goldengate_deployment_environments(request=sample_request).pages + ) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token + + +def test_get_goldengate_connection_type_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.get_goldengate_connection_type + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.get_goldengate_connection_type + ] = mock_rpc + + request = {} + client.get_goldengate_connection_type(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.get_goldengate_connection_type(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_get_goldengate_connection_type_rest_required_fields( + request_type=goldengate_connection_type.GetGoldengateConnectionTypeRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_goldengate_connection_type._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["name"] = "name_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_goldengate_connection_type._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = goldengate_connection_type.GoldengateConnectionType() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = goldengate_connection_type.GoldengateConnectionType.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.get_goldengate_connection_type(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_get_goldengate_connection_type_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.get_goldengate_connection_type._get_unset_required_fields( + {} + ) + assert set(unset_fields) == (set(()) & set(("name",))) + + +def test_get_goldengate_connection_type_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = goldengate_connection_type.GoldengateConnectionType() + + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/goldengateConnectionTypes/sample3" + } + + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = goldengate_connection_type.GoldengateConnectionType.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.get_goldengate_connection_type(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/goldengateConnectionTypes/*}" + % client.transport._host, + args[1], + ) + + +def test_get_goldengate_connection_type_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.get_goldengate_connection_type( + goldengate_connection_type.GetGoldengateConnectionTypeRequest(), + name="name_value", + ) + + +def test_list_goldengate_connection_types_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.list_goldengate_connection_types + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.list_goldengate_connection_types + ] = mock_rpc + + request = {} + client.list_goldengate_connection_types(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.list_goldengate_connection_types(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_list_goldengate_connection_types_rest_required_fields( + request_type=goldengate_connection_type.ListGoldengateConnectionTypesRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["parent"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_goldengate_connection_types._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["parent"] = "parent_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_goldengate_connection_types._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "filter", + "page_size", + "page_token", + ) + ) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = goldengate_connection_type.ListGoldengateConnectionTypesResponse() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = ( + goldengate_connection_type.ListGoldengateConnectionTypesResponse.pb( + return_value + ) + ) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.list_goldengate_connection_types(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_list_goldengate_connection_types_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = ( + transport.list_goldengate_connection_types._get_unset_required_fields({}) + ) + assert set(unset_fields) == ( + set( + ( + "filter", + "pageSize", + "pageToken", + ) + ) + & set(("parent",)) + ) + + +def test_list_goldengate_connection_types_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = ( + goldengate_connection_type.ListGoldengateConnectionTypesResponse() + ) + + # get arguments that satisfy an http rule for this method + sample_request = {"parent": "projects/sample1/locations/sample2"} + + # get truthy value for each flattened field + mock_args = dict( + parent="parent_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = ( + goldengate_connection_type.ListGoldengateConnectionTypesResponse.pb( + return_value + ) + ) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.list_goldengate_connection_types(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{parent=projects/*/locations/*}/goldengateConnectionTypes" + % client.transport._host, + args[1], + ) + + +def test_list_goldengate_connection_types_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.list_goldengate_connection_types( + goldengate_connection_type.ListGoldengateConnectionTypesRequest(), + parent="parent_value", + ) + + +def test_list_goldengate_connection_types_rest_pager(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + goldengate_connection_type.ListGoldengateConnectionTypesResponse( + goldengate_connection_types=[ + goldengate_connection_type.GoldengateConnectionType(), + goldengate_connection_type.GoldengateConnectionType(), + goldengate_connection_type.GoldengateConnectionType(), + ], + next_page_token="abc", + ), + goldengate_connection_type.ListGoldengateConnectionTypesResponse( + goldengate_connection_types=[], + next_page_token="def", + ), + goldengate_connection_type.ListGoldengateConnectionTypesResponse( + goldengate_connection_types=[ + goldengate_connection_type.GoldengateConnectionType(), + ], + next_page_token="ghi", + ), + goldengate_connection_type.ListGoldengateConnectionTypesResponse( + goldengate_connection_types=[ + goldengate_connection_type.GoldengateConnectionType(), + goldengate_connection_type.GoldengateConnectionType(), + ], + ), + ) + # Two responses for two calls + response = response + response + + # Wrap the values into proper Response objs + response = tuple( + goldengate_connection_type.ListGoldengateConnectionTypesResponse.to_json(x) + for x in response + ) + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values + + sample_request = {"parent": "projects/sample1/locations/sample2"} + + pager = client.list_goldengate_connection_types(request=sample_request) + + results = list(pager) + assert len(results) == 6 + assert all( + isinstance(i, goldengate_connection_type.GoldengateConnectionType) + for i in results + ) + + pages = list( + client.list_goldengate_connection_types(request=sample_request).pages + ) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token + + +def test_list_db_versions_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert client._transport.list_db_versions in client._transport._wrapped_methods + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[client._transport.list_db_versions] = ( + mock_rpc + ) + + request = {} + client.list_db_versions(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.list_db_versions(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_list_db_versions_rest_required_fields( + request_type=db_version.ListDbVersionsRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["parent"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_db_versions._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["parent"] = "parent_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_db_versions._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "filter", + "page_size", + "page_token", + ) + ) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = db_version.ListDbVersionsResponse() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = db_version.ListDbVersionsResponse.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.list_db_versions(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_list_db_versions_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.list_db_versions._get_unset_required_fields({}) + assert set(unset_fields) == ( + set( + ( + "filter", + "pageSize", + "pageToken", + ) + ) + & set(("parent",)) + ) + + +def test_list_db_versions_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = db_version.ListDbVersionsResponse() + + # get arguments that satisfy an http rule for this method + sample_request = {"parent": "projects/sample1/locations/sample2"} + + # get truthy value for each flattened field + mock_args = dict( + parent="parent_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = db_version.ListDbVersionsResponse.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.list_db_versions(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{parent=projects/*/locations/*}/dbVersions" % client.transport._host, + args[1], + ) + + +def test_list_db_versions_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.list_db_versions( + db_version.ListDbVersionsRequest(), + parent="parent_value", + ) + + +def test_list_db_versions_rest_pager(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + db_version.ListDbVersionsResponse( + db_versions=[ + db_version.DbVersion(), + db_version.DbVersion(), + db_version.DbVersion(), + ], + next_page_token="abc", + ), + db_version.ListDbVersionsResponse( + db_versions=[], + next_page_token="def", + ), + db_version.ListDbVersionsResponse( + db_versions=[ + db_version.DbVersion(), + ], + next_page_token="ghi", + ), + db_version.ListDbVersionsResponse( + db_versions=[ + db_version.DbVersion(), + db_version.DbVersion(), + ], + ), + ) + # Two responses for two calls + response = response + response + + # Wrap the values into proper Response objs + response = tuple(db_version.ListDbVersionsResponse.to_json(x) for x in response) + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values + + sample_request = {"parent": "projects/sample1/locations/sample2"} + + pager = client.list_db_versions(request=sample_request) + + results = list(pager) + assert len(results) == 6 + assert all(isinstance(i, db_version.DbVersion) for i in results) + + pages = list(client.list_db_versions(request=sample_request).pages) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token + + +def test_list_database_character_sets_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.list_database_character_sets + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.list_database_character_sets + ] = mock_rpc + + request = {} + client.list_database_character_sets(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.list_database_character_sets(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_list_database_character_sets_rest_required_fields( + request_type=database_character_set.ListDatabaseCharacterSetsRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["parent"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_database_character_sets._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["parent"] = "parent_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_database_character_sets._get_unset_required_fields(jsonified_request) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "filter", + "page_size", + "page_token", + ) + ) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = database_character_set.ListDatabaseCharacterSetsResponse() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = database_character_set.ListDatabaseCharacterSetsResponse.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.list_database_character_sets(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_list_database_character_sets_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = transport.list_database_character_sets._get_unset_required_fields({}) + assert set(unset_fields) == ( + set( + ( + "filter", + "pageSize", + "pageToken", + ) + ) + & set(("parent",)) + ) + + +def test_list_database_character_sets_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = database_character_set.ListDatabaseCharacterSetsResponse() + + # get arguments that satisfy an http rule for this method + sample_request = {"parent": "projects/sample1/locations/sample2"} + + # get truthy value for each flattened field + mock_args = dict( + parent="parent_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = database_character_set.ListDatabaseCharacterSetsResponse.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.list_database_character_sets(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{parent=projects/*/locations/*}/databaseCharacterSets" + % client.transport._host, + args[1], + ) + + +def test_list_database_character_sets_rest_flattened_error(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.list_database_character_sets( + database_character_set.ListDatabaseCharacterSetsRequest(), + parent="parent_value", + ) + + +def test_list_database_character_sets_rest_pager(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + database_character_set.ListDatabaseCharacterSetsResponse( + database_character_sets=[ + database_character_set.DatabaseCharacterSet(), + database_character_set.DatabaseCharacterSet(), + database_character_set.DatabaseCharacterSet(), + ], + next_page_token="abc", + ), + database_character_set.ListDatabaseCharacterSetsResponse( + database_character_sets=[], + next_page_token="def", + ), + database_character_set.ListDatabaseCharacterSetsResponse( + database_character_sets=[ + database_character_set.DatabaseCharacterSet(), + ], + next_page_token="ghi", + ), + database_character_set.ListDatabaseCharacterSetsResponse( + database_character_sets=[ + database_character_set.DatabaseCharacterSet(), + database_character_set.DatabaseCharacterSet(), + ], + ), + ) + # Two responses for two calls + response = response + response + + # Wrap the values into proper Response objs + response = tuple( + database_character_set.ListDatabaseCharacterSetsResponse.to_json(x) + for x in response + ) + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values + + sample_request = {"parent": "projects/sample1/locations/sample2"} + + pager = client.list_database_character_sets(request=sample_request) + + results = list(pager) + assert len(results) == 6 + assert all( + isinstance(i, database_character_set.DatabaseCharacterSet) for i in results + ) + + pages = list(client.list_database_character_sets(request=sample_request).pages) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token + + +def test_list_goldengate_connection_assignments_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.list_goldengate_connection_assignments + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.list_goldengate_connection_assignments + ] = mock_rpc + + request = {} + client.list_goldengate_connection_assignments(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.list_goldengate_connection_assignments(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_list_goldengate_connection_assignments_rest_required_fields( + request_type=goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["parent"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_goldengate_connection_assignments._get_unset_required_fields( + jsonified_request + ) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["parent"] = "parent_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).list_goldengate_connection_assignments._get_unset_required_fields( + jsonified_request + ) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "filter", + "order_by", + "page_size", + "page_token", + ) + ) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = ( + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse() + ) + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.list_goldengate_connection_assignments(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_list_goldengate_connection_assignments_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = ( + transport.list_goldengate_connection_assignments._get_unset_required_fields({}) + ) + assert set(unset_fields) == ( + set( + ( + "filter", + "orderBy", + "pageSize", + "pageToken", + ) + ) + & set(("parent",)) + ) + + +def test_list_goldengate_connection_assignments_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse() + + # get arguments that satisfy an http rule for this method + sample_request = {"parent": "projects/sample1/locations/sample2"} + + # get truthy value for each flattened field + mock_args = dict( + parent="parent_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.list_goldengate_connection_assignments(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{parent=projects/*/locations/*}/goldengateConnectionAssignments" + % client.transport._host, + args[1], + ) + + +def test_list_goldengate_connection_assignments_rest_flattened_error( + transport: str = "rest", +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.list_goldengate_connection_assignments( + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest(), + parent="parent_value", + ) + + +def test_list_goldengate_connection_assignments_rest_pager(transport: str = "rest"): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # TODO(kbandes): remove this mock unless there's a good reason for it. + # with mock.patch.object(path_template, 'transcode') as transcode: + # Set the response as a series of pages + response = ( + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse( + goldengate_connection_assignments=[ + goldengate_connection_assignment.GoldengateConnectionAssignment(), + goldengate_connection_assignment.GoldengateConnectionAssignment(), + goldengate_connection_assignment.GoldengateConnectionAssignment(), + ], + next_page_token="abc", + ), + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse( + goldengate_connection_assignments=[], + next_page_token="def", + ), + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse( + goldengate_connection_assignments=[ + goldengate_connection_assignment.GoldengateConnectionAssignment(), + ], + next_page_token="ghi", + ), + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse( + goldengate_connection_assignments=[ + goldengate_connection_assignment.GoldengateConnectionAssignment(), + goldengate_connection_assignment.GoldengateConnectionAssignment(), + ], + ), + ) + # Two responses for two calls + response = response + response + + # Wrap the values into proper Response objs + response = tuple( + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse.to_json( + x + ) + for x in response + ) + return_values = tuple(Response() for i in response) + for return_val, response_val in zip(return_values, response): + return_val._content = response_val.encode("UTF-8") + return_val.status_code = 200 + req.side_effect = return_values + + sample_request = {"parent": "projects/sample1/locations/sample2"} + + pager = client.list_goldengate_connection_assignments(request=sample_request) + + results = list(pager) + assert len(results) == 6 + assert all( + isinstance( + i, goldengate_connection_assignment.GoldengateConnectionAssignment + ) + for i in results + ) + + pages = list( + client.list_goldengate_connection_assignments(request=sample_request).pages + ) + for page_, token in zip(pages, ["abc", "def", "ghi", ""]): + assert page_.raw_page.next_page_token == token + + +def test_get_goldengate_connection_assignment_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.get_goldengate_connection_assignment + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.get_goldengate_connection_assignment + ] = mock_rpc + + request = {} + client.get_goldengate_connection_assignment(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.get_goldengate_connection_assignment(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_get_goldengate_connection_assignment_rest_required_fields( + request_type=goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_goldengate_connection_assignment._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["name"] = "name_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).get_goldengate_connection_assignment._get_unset_required_fields(jsonified_request) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = goldengate_connection_assignment.GoldengateConnectionAssignment() + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "get", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = ( + goldengate_connection_assignment.GoldengateConnectionAssignment.pb( + return_value + ) + ) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.get_goldengate_connection_assignment(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_get_goldengate_connection_assignment_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = ( + transport.get_goldengate_connection_assignment._get_unset_required_fields({}) + ) + assert set(unset_fields) == (set(()) & set(("name",))) + + +def test_get_goldengate_connection_assignment_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = goldengate_connection_assignment.GoldengateConnectionAssignment() + + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/goldengateConnectionAssignments/sample3" + } + + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = ( + goldengate_connection_assignment.GoldengateConnectionAssignment.pb( + return_value + ) + ) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.get_goldengate_connection_assignment(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/goldengateConnectionAssignments/*}" + % client.transport._host, + args[1], + ) + + +def test_get_goldengate_connection_assignment_rest_flattened_error( + transport: str = "rest", +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.get_goldengate_connection_assignment( + goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest(), + name="name_value", + ) + + +def test_create_goldengate_connection_assignment_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.create_goldengate_connection_assignment + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.create_goldengate_connection_assignment + ] = mock_rpc + + request = {} + client.create_goldengate_connection_assignment(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.create_goldengate_connection_assignment(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_create_goldengate_connection_assignment_rest_required_fields( + request_type=gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["parent"] = "" + request_init["goldengate_connection_assignment_id"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + assert "goldengateConnectionAssignmentId" not in jsonified_request + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).create_goldengate_connection_assignment._get_unset_required_fields( + jsonified_request + ) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + assert "goldengateConnectionAssignmentId" in jsonified_request + assert ( + jsonified_request["goldengateConnectionAssignmentId"] + == request_init["goldengate_connection_assignment_id"] + ) + + jsonified_request["parent"] = "parent_value" + jsonified_request["goldengateConnectionAssignmentId"] = ( + "goldengate_connection_assignment_id_value" + ) + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).create_goldengate_connection_assignment._get_unset_required_fields( + jsonified_request + ) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set( + ( + "goldengate_connection_assignment_id", + "request_id", + ) + ) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "parent" in jsonified_request + assert jsonified_request["parent"] == "parent_value" + assert "goldengateConnectionAssignmentId" in jsonified_request + assert ( + jsonified_request["goldengateConnectionAssignmentId"] + == "goldengate_connection_assignment_id_value" + ) + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "post", + "query_params": pb_request, + } + transcode_result["body"] = pb_request + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.create_goldengate_connection_assignment(request) + + expected_params = [ + ( + "goldengateConnectionAssignmentId", + "", + ), + ("$alt", "json;enum-encoding=int"), + ] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_create_goldengate_connection_assignment_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = ( + transport.create_goldengate_connection_assignment._get_unset_required_fields({}) + ) + assert set(unset_fields) == ( + set( + ( + "goldengateConnectionAssignmentId", + "requestId", + ) + ) + & set( + ( + "parent", + "goldengateConnectionAssignmentId", + "goldengateConnectionAssignment", + ) + ) + ) + + +def test_create_goldengate_connection_assignment_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # get arguments that satisfy an http rule for this method + sample_request = {"parent": "projects/sample1/locations/sample2"} + + # get truthy value for each flattened field + mock_args = dict( + parent="parent_value", + goldengate_connection_assignment=gco_goldengate_connection_assignment.GoldengateConnectionAssignment( + name="name_value" + ), + goldengate_connection_assignment_id="goldengate_connection_assignment_id_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.create_goldengate_connection_assignment(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{parent=projects/*/locations/*}/goldengateConnectionAssignments" + % client.transport._host, + args[1], + ) + + +def test_create_goldengate_connection_assignment_rest_flattened_error( + transport: str = "rest", +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.create_goldengate_connection_assignment( + gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest(), + parent="parent_value", + goldengate_connection_assignment=gco_goldengate_connection_assignment.GoldengateConnectionAssignment( + name="name_value" + ), + goldengate_connection_assignment_id="goldengate_connection_assignment_id_value", + ) + + +def test_delete_goldengate_connection_assignment_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.delete_goldengate_connection_assignment + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.delete_goldengate_connection_assignment + ] = mock_rpc + + request = {} + client.delete_goldengate_connection_assignment(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + # Operation methods build a cached wrapper on first rpc call + # subsequent calls should use the cached wrapper + wrapper_fn.reset_mock() + + client.delete_goldengate_connection_assignment(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_delete_goldengate_connection_assignment_rest_required_fields( + request_type=goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).delete_goldengate_connection_assignment._get_unset_required_fields( + jsonified_request + ) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["name"] = "name_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).delete_goldengate_connection_assignment._get_unset_required_fields( + jsonified_request + ) + # Check that path parameters and body parameters are not mixing in. + assert not set(unset_fields) - set(("request_id",)) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "delete", + "query_params": pb_request, + } + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.delete_goldengate_connection_assignment(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_delete_goldengate_connection_assignment_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = ( + transport.delete_goldengate_connection_assignment._get_unset_required_fields({}) + ) + assert set(unset_fields) == (set(("requestId",)) & set(("name",))) + + +def test_delete_goldengate_connection_assignment_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/goldengateConnectionAssignments/sample3" + } + + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.delete_goldengate_connection_assignment(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/goldengateConnectionAssignments/*}" + % client.transport._host, + args[1], + ) + + +def test_delete_goldengate_connection_assignment_rest_flattened_error( + transport: str = "rest", +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.delete_goldengate_connection_assignment( + goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest(), + name="name_value", + ) + + +def test_test_goldengate_connection_assignment_rest_use_cached_wrapped_rpc(): + # Clients should use _prep_wrapped_messages to create cached wrapped rpcs, + # instead of constructing them on each call + with mock.patch("google.api_core.gapic_v1.method.wrap_method") as wrapper_fn: + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Should wrap all calls on client creation + assert wrapper_fn.call_count > 0 + wrapper_fn.reset_mock() + + # Ensure method has been cached + assert ( + client._transport.test_goldengate_connection_assignment + in client._transport._wrapped_methods + ) + + # Replace cached wrapped function with mock + mock_rpc = mock.Mock() + mock_rpc.return_value.name = ( + "foo" # operation_request.operation in compute client(s) expect a string. + ) + client._transport._wrapped_methods[ + client._transport.test_goldengate_connection_assignment + ] = mock_rpc + + request = {} + client.test_goldengate_connection_assignment(request) + + # Establish that the underlying gRPC stub method was called. + assert mock_rpc.call_count == 1 + + client.test_goldengate_connection_assignment(request) + + # Establish that a new wrapper was not created for this call + assert wrapper_fn.call_count == 0 + assert mock_rpc.call_count == 2 + + +def test_test_goldengate_connection_assignment_rest_required_fields( + request_type=goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest, +): + transport_class = transports.OracleDatabaseRestTransport + + request_init = {} + request_init["name"] = "" + request = request_type(**request_init) + pb_request = request_type.pb(request) + jsonified_request = json.loads( + json_format.MessageToJson(pb_request, use_integers_for_enums=False) + ) + + # verify fields with default values are dropped + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).test_goldengate_connection_assignment._get_unset_required_fields( + jsonified_request + ) + jsonified_request.update(unset_fields) + + # verify required fields with default values are now present + + jsonified_request["name"] = "name_value" + + unset_fields = transport_class( + credentials=ga_credentials.AnonymousCredentials() + ).test_goldengate_connection_assignment._get_unset_required_fields( + jsonified_request + ) + jsonified_request.update(unset_fields) + + # verify required fields with non-default values are left alone + assert "name" in jsonified_request + assert jsonified_request["name"] == "name_value" + + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + request = request_type(**request_init) + + # Designate an appropriate value for the returned response. + return_value = ( + goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse() + ) + # Mock the http request call within the method and fake a response. + with mock.patch.object(Session, "request") as req: + # We need to mock transcode() because providing default values + # for required fields will fail the real version if the http_options + # expect actual values for those fields. + with mock.patch.object(path_template, "transcode") as transcode: + # A uri without fields and an empty body will force all the + # request fields to show up in the query_params. + pb_request = request_type.pb(request) + transcode_result = { + "uri": "v1/sample_method", + "method": "post", + "query_params": pb_request, + } + transcode_result["body"] = pb_request + transcode.return_value = transcode_result + + response_value = Response() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) + + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + response = client.test_goldengate_connection_assignment(request) + + expected_params = [("$alt", "json;enum-encoding=int")] + actual_params = req.call_args.kwargs["params"] + assert sorted(expected_params) == sorted(actual_params) + + +def test_test_goldengate_connection_assignment_rest_unset_required_fields(): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials + ) + + unset_fields = ( + transport.test_goldengate_connection_assignment._get_unset_required_fields({}) + ) + assert set(unset_fields) == (set(()) & set(("name",))) + + +def test_test_goldengate_connection_assignment_rest_flattened(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse() + + # get arguments that satisfy an http rule for this method + sample_request = { + "name": "projects/sample1/locations/sample2/goldengateConnectionAssignments/sample3" + } + + # get truthy value for each flattened field + mock_args = dict( + name="name_value", + ) + mock_args.update(sample_request) + + # Wrap the value into a proper Response obj + response_value = Response() + response_value.status_code = 200 + # Convert return value to protobuf type + return_value = goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) + response_value._content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + + client.test_goldengate_connection_assignment(**mock_args) + + # Establish that the underlying call was made with the expected + # request object values. + assert len(req.mock_calls) == 1 + _, args, _ = req.mock_calls[0] + assert path_template.validate( + "%s/v1/{name=projects/*/locations/*/goldengateConnectionAssignments/*}:test" + % client.transport._host, + args[1], + ) + + +def test_test_goldengate_connection_assignment_rest_flattened_error( + transport: str = "rest", +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # Attempting to call a method with both a request object and flattened + # fields is an error. + with pytest.raises(ValueError): + client.test_goldengate_connection_assignment( + goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest(), + name="name_value", + ) + + +def test_credentials_transport_error(): + # It is an error to provide credentials and a transport instance. + transport = transports.OracleDatabaseGrpcTransport( + credentials=ga_credentials.AnonymousCredentials(), + ) + with pytest.raises(ValueError): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport=transport, + ) + + # It is an error to provide a credentials file and a transport instance. + transport = transports.OracleDatabaseGrpcTransport( + credentials=ga_credentials.AnonymousCredentials(), + ) + with pytest.raises(ValueError): + client = OracleDatabaseClient( + client_options={"credentials_file": "credentials.json"}, + transport=transport, + ) + + # It is an error to provide an api_key and a transport instance. + transport = transports.OracleDatabaseGrpcTransport( + credentials=ga_credentials.AnonymousCredentials(), + ) + options = client_options.ClientOptions() + options.api_key = "api_key" + with pytest.raises(ValueError): + client = OracleDatabaseClient( + client_options=options, + transport=transport, + ) + + # It is an error to provide an api_key and a credential. + options = client_options.ClientOptions() + options.api_key = "api_key" + with pytest.raises(ValueError): + client = OracleDatabaseClient( + client_options=options, credentials=ga_credentials.AnonymousCredentials() + ) + + # It is an error to provide scopes and a transport instance. + transport = transports.OracleDatabaseGrpcTransport( + credentials=ga_credentials.AnonymousCredentials(), + ) + with pytest.raises(ValueError): + client = OracleDatabaseClient( + client_options={"scopes": ["1", "2"]}, + transport=transport, + ) + + +def test_transport_instance(): + # A client may be instantiated with a custom transport instance. + transport = transports.OracleDatabaseGrpcTransport( + credentials=ga_credentials.AnonymousCredentials(), + ) + client = OracleDatabaseClient(transport=transport) + assert client.transport is transport + + +def test_transport_get_channel(): + # A client may be instantiated with a custom transport instance. + transport = transports.OracleDatabaseGrpcTransport( + credentials=ga_credentials.AnonymousCredentials(), + ) + channel = transport.grpc_channel + assert channel + + transport = transports.OracleDatabaseGrpcAsyncIOTransport( + credentials=ga_credentials.AnonymousCredentials(), + ) + channel = transport.grpc_channel + assert channel + + +@pytest.mark.parametrize( + "transport_class", + [ + transports.OracleDatabaseGrpcTransport, + transports.OracleDatabaseGrpcAsyncIOTransport, + transports.OracleDatabaseRestTransport, + ], +) +def test_transport_adc(transport_class): + # Test default credentials are used if not provided. + with mock.patch.object(google.auth, "default") as adc: + adc.return_value = (ga_credentials.AnonymousCredentials(), None) + transport_class() + adc.assert_called_once() + + +def test_transport_kind_grpc(): + transport = OracleDatabaseClient.get_transport_class("grpc")( + credentials=ga_credentials.AnonymousCredentials() + ) + assert transport.kind == "grpc" + + +def test_initialize_client_w_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="grpc" + ) + assert client is not None + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_cloud_exadata_infrastructures_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_cloud_exadata_infrastructures), "__call__" + ) as call: + call.return_value = oracledatabase.ListCloudExadataInfrastructuresResponse() + client.list_cloud_exadata_infrastructures(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.ListCloudExadataInfrastructuresRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_get_cloud_exadata_infrastructure_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_cloud_exadata_infrastructure), "__call__" + ) as call: + call.return_value = exadata_infra.CloudExadataInfrastructure() + client.get_cloud_exadata_infrastructure(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.GetCloudExadataInfrastructureRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_create_cloud_exadata_infrastructure_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.create_cloud_exadata_infrastructure), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.create_cloud_exadata_infrastructure(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.CreateCloudExadataInfrastructureRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_delete_cloud_exadata_infrastructure_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.delete_cloud_exadata_infrastructure), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.delete_cloud_exadata_infrastructure(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.DeleteCloudExadataInfrastructureRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_cloud_vm_clusters_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_cloud_vm_clusters), "__call__" + ) as call: + call.return_value = oracledatabase.ListCloudVmClustersResponse() + client.list_cloud_vm_clusters(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.ListCloudVmClustersRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_get_cloud_vm_cluster_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_cloud_vm_cluster), "__call__" + ) as call: + call.return_value = vm_cluster.CloudVmCluster() + client.get_cloud_vm_cluster(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.GetCloudVmClusterRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_create_cloud_vm_cluster_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.create_cloud_vm_cluster), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.create_cloud_vm_cluster(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.CreateCloudVmClusterRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_delete_cloud_vm_cluster_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.delete_cloud_vm_cluster), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.delete_cloud_vm_cluster(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.DeleteCloudVmClusterRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_entitlements_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_entitlements), "__call__" + ) as call: + call.return_value = oracledatabase.ListEntitlementsResponse() + client.list_entitlements(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.ListEntitlementsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_db_servers_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object(type(client.transport.list_db_servers), "__call__") as call: + call.return_value = oracledatabase.ListDbServersResponse() + client.list_db_servers(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.ListDbServersRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_db_nodes_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object(type(client.transport.list_db_nodes), "__call__") as call: + call.return_value = oracledatabase.ListDbNodesResponse() + client.list_db_nodes(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.ListDbNodesRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_gi_versions_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object(type(client.transport.list_gi_versions), "__call__") as call: + call.return_value = oracledatabase.ListGiVersionsResponse() + client.list_gi_versions(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.ListGiVersionsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_minor_versions_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_minor_versions), "__call__" + ) as call: + call.return_value = minor_version.ListMinorVersionsResponse() + client.list_minor_versions(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = minor_version.ListMinorVersionsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_db_system_shapes_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_db_system_shapes), "__call__" + ) as call: + call.return_value = oracledatabase.ListDbSystemShapesResponse() + client.list_db_system_shapes(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.ListDbSystemShapesRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_autonomous_databases_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_autonomous_databases), "__call__" + ) as call: + call.return_value = oracledatabase.ListAutonomousDatabasesResponse() + client.list_autonomous_databases(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.ListAutonomousDatabasesRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_get_autonomous_database_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_autonomous_database), "__call__" + ) as call: + call.return_value = autonomous_database.AutonomousDatabase() + client.get_autonomous_database(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.GetAutonomousDatabaseRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_create_autonomous_database_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.create_autonomous_database), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.create_autonomous_database(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.CreateAutonomousDatabaseRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_update_autonomous_database_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.update_autonomous_database), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.update_autonomous_database(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.UpdateAutonomousDatabaseRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_delete_autonomous_database_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.delete_autonomous_database), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.delete_autonomous_database(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.DeleteAutonomousDatabaseRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_restore_autonomous_database_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.restore_autonomous_database), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.restore_autonomous_database(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.RestoreAutonomousDatabaseRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_generate_autonomous_database_wallet_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.generate_autonomous_database_wallet), "__call__" + ) as call: + call.return_value = oracledatabase.GenerateAutonomousDatabaseWalletResponse() + client.generate_autonomous_database_wallet(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.GenerateAutonomousDatabaseWalletRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_autonomous_db_versions_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_autonomous_db_versions), "__call__" + ) as call: + call.return_value = oracledatabase.ListAutonomousDbVersionsResponse() + client.list_autonomous_db_versions(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.ListAutonomousDbVersionsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_autonomous_database_character_sets_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_autonomous_database_character_sets), "__call__" + ) as call: + call.return_value = oracledatabase.ListAutonomousDatabaseCharacterSetsResponse() + client.list_autonomous_database_character_sets(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.ListAutonomousDatabaseCharacterSetsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_autonomous_database_backups_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_autonomous_database_backups), "__call__" + ) as call: + call.return_value = oracledatabase.ListAutonomousDatabaseBackupsResponse() + client.list_autonomous_database_backups(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.ListAutonomousDatabaseBackupsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_stop_autonomous_database_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.stop_autonomous_database), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.stop_autonomous_database(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.StopAutonomousDatabaseRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_start_autonomous_database_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.start_autonomous_database), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.start_autonomous_database(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.StartAutonomousDatabaseRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_restart_autonomous_database_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.restart_autonomous_database), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.restart_autonomous_database(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.RestartAutonomousDatabaseRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_switchover_autonomous_database_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.switchover_autonomous_database), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.switchover_autonomous_database(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.SwitchoverAutonomousDatabaseRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_failover_autonomous_database_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.failover_autonomous_database), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.failover_autonomous_database(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.FailoverAutonomousDatabaseRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_odb_networks_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_odb_networks), "__call__" + ) as call: + call.return_value = odb_network.ListOdbNetworksResponse() + client.list_odb_networks(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = odb_network.ListOdbNetworksRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_get_odb_network_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object(type(client.transport.get_odb_network), "__call__") as call: + call.return_value = odb_network.OdbNetwork() + client.get_odb_network(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = odb_network.GetOdbNetworkRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_create_odb_network_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.create_odb_network), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.create_odb_network(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = gco_odb_network.CreateOdbNetworkRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_delete_odb_network_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.delete_odb_network), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.delete_odb_network(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = odb_network.DeleteOdbNetworkRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_odb_subnets_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object(type(client.transport.list_odb_subnets), "__call__") as call: + call.return_value = odb_subnet.ListOdbSubnetsResponse() + client.list_odb_subnets(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = odb_subnet.ListOdbSubnetsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_get_odb_subnet_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object(type(client.transport.get_odb_subnet), "__call__") as call: + call.return_value = odb_subnet.OdbSubnet() + client.get_odb_subnet(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = odb_subnet.GetOdbSubnetRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_create_odb_subnet_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.create_odb_subnet), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.create_odb_subnet(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = gco_odb_subnet.CreateOdbSubnetRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_delete_odb_subnet_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.delete_odb_subnet), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.delete_odb_subnet(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = odb_subnet.DeleteOdbSubnetRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_exadb_vm_clusters_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_exadb_vm_clusters), "__call__" + ) as call: + call.return_value = oracledatabase.ListExadbVmClustersResponse() + client.list_exadb_vm_clusters(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.ListExadbVmClustersRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_get_exadb_vm_cluster_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_exadb_vm_cluster), "__call__" + ) as call: + call.return_value = exadb_vm_cluster.ExadbVmCluster() + client.get_exadb_vm_cluster(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.GetExadbVmClusterRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_create_exadb_vm_cluster_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.create_exadb_vm_cluster), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.create_exadb_vm_cluster(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.CreateExadbVmClusterRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_delete_exadb_vm_cluster_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.delete_exadb_vm_cluster), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.delete_exadb_vm_cluster(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.DeleteExadbVmClusterRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_update_exadb_vm_cluster_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.update_exadb_vm_cluster), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.update_exadb_vm_cluster(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.UpdateExadbVmClusterRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_remove_virtual_machine_exadb_vm_cluster_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.remove_virtual_machine_exadb_vm_cluster), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.remove_virtual_machine_exadb_vm_cluster(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.RemoveVirtualMachineExadbVmClusterRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_exascale_db_storage_vaults_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_exascale_db_storage_vaults), "__call__" + ) as call: + call.return_value = ( + exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse() + ) + client.list_exascale_db_storage_vaults(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_get_exascale_db_storage_vault_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_exascale_db_storage_vault), "__call__" + ) as call: + call.return_value = exascale_db_storage_vault.ExascaleDbStorageVault() + client.get_exascale_db_storage_vault(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = exascale_db_storage_vault.GetExascaleDbStorageVaultRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_create_exascale_db_storage_vault_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.create_exascale_db_storage_vault), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.create_exascale_db_storage_vault(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = ( + gco_exascale_db_storage_vault.CreateExascaleDbStorageVaultRequest() + ) + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_delete_exascale_db_storage_vault_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.delete_exascale_db_storage_vault), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.delete_exascale_db_storage_vault(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = exascale_db_storage_vault.DeleteExascaleDbStorageVaultRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_db_system_initial_storage_sizes_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_db_system_initial_storage_sizes), "__call__" + ) as call: + call.return_value = ( + db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse() + ) + client.list_db_system_initial_storage_sizes(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = ( + db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest() + ) + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_databases_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object(type(client.transport.list_databases), "__call__") as call: + call.return_value = database.ListDatabasesResponse() + client.list_databases(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = database.ListDatabasesRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_get_database_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object(type(client.transport.get_database), "__call__") as call: + call.return_value = database.Database() + client.get_database(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = database.GetDatabaseRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_pluggable_databases_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_pluggable_databases), "__call__" + ) as call: + call.return_value = pluggable_database.ListPluggableDatabasesResponse() + client.list_pluggable_databases(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = pluggable_database.ListPluggableDatabasesRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_get_pluggable_database_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_pluggable_database), "__call__" + ) as call: + call.return_value = pluggable_database.PluggableDatabase() + client.get_pluggable_database(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = pluggable_database.GetPluggableDatabaseRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_db_systems_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object(type(client.transport.list_db_systems), "__call__") as call: + call.return_value = db_system.ListDbSystemsResponse() + client.list_db_systems(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = db_system.ListDbSystemsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_get_db_system_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object(type(client.transport.get_db_system), "__call__") as call: + call.return_value = db_system.DbSystem() + client.get_db_system(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = db_system.GetDbSystemRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_create_db_system_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object(type(client.transport.create_db_system), "__call__") as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.create_db_system(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = gco_db_system.CreateDbSystemRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_delete_db_system_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object(type(client.transport.delete_db_system), "__call__") as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.delete_db_system(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = db_system.DeleteDbSystemRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_goldengate_deployments_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployments), "__call__" + ) as call: + call.return_value = goldengate_deployment.ListGoldengateDeploymentsResponse() + client.list_goldengate_deployments(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment.ListGoldengateDeploymentsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_get_goldengate_deployment_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment), "__call__" + ) as call: + call.return_value = goldengate_deployment.GoldengateDeployment() + client.get_goldengate_deployment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment.GetGoldengateDeploymentRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_create_goldengate_deployment_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_deployment), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.create_goldengate_deployment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = gco_goldengate_deployment.CreateGoldengateDeploymentRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_delete_goldengate_deployment_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_deployment), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.delete_goldengate_deployment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment.DeleteGoldengateDeploymentRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_stop_goldengate_deployment_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.stop_goldengate_deployment), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.stop_goldengate_deployment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment.StopGoldengateDeploymentRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_start_goldengate_deployment_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.start_goldengate_deployment), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.start_goldengate_deployment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment.StartGoldengateDeploymentRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_goldengate_connections_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connections), "__call__" + ) as call: + call.return_value = goldengate_connection.ListGoldengateConnectionsResponse() + client.list_goldengate_connections(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_connection.ListGoldengateConnectionsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_get_goldengate_connection_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection), "__call__" + ) as call: + call.return_value = goldengate_connection.GoldengateConnection() + client.get_goldengate_connection(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_connection.GetGoldengateConnectionRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_create_goldengate_connection_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_connection), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.create_goldengate_connection(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = gco_goldengate_connection.CreateGoldengateConnectionRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_delete_goldengate_connection_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_connection), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.delete_goldengate_connection(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_connection.DeleteGoldengateConnectionRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_get_goldengate_deployment_version_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_version), "__call__" + ) as call: + call.return_value = goldengate_deployment_version.GoldengateDeploymentVersion() + client.get_goldengate_deployment_version(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = ( + goldengate_deployment_version.GetGoldengateDeploymentVersionRequest() + ) + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_goldengate_deployment_versions_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_versions), "__call__" + ) as call: + call.return_value = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse() + ) + client.list_goldengate_deployment_versions(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest() + ) + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_get_goldengate_deployment_type_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_type), "__call__" + ) as call: + call.return_value = goldengate_deployment_type.GoldengateDeploymentType() + client.get_goldengate_deployment_type(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment_type.GetGoldengateDeploymentTypeRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_goldengate_deployment_types_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_types), "__call__" + ) as call: + call.return_value = ( + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse() + ) + client.list_goldengate_deployment_types(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment_type.ListGoldengateDeploymentTypesRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_get_goldengate_deployment_environment_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_environment), "__call__" + ) as call: + call.return_value = ( + goldengate_deployment_environment.GoldengateDeploymentEnvironment() + ) + client.get_goldengate_deployment_environment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_goldengate_deployment_environments_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_environments), "__call__" + ) as call: + call.return_value = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse() + client.list_goldengate_deployment_environments(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_get_goldengate_connection_type_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection_type), "__call__" + ) as call: + call.return_value = goldengate_connection_type.GoldengateConnectionType() + client.get_goldengate_connection_type(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_connection_type.GetGoldengateConnectionTypeRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_goldengate_connection_types_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_types), "__call__" + ) as call: + call.return_value = ( + goldengate_connection_type.ListGoldengateConnectionTypesResponse() + ) + client.list_goldengate_connection_types(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_connection_type.ListGoldengateConnectionTypesRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_db_versions_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object(type(client.transport.list_db_versions), "__call__") as call: + call.return_value = db_version.ListDbVersionsResponse() + client.list_db_versions(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = db_version.ListDbVersionsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_database_character_sets_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_database_character_sets), "__call__" + ) as call: + call.return_value = database_character_set.ListDatabaseCharacterSetsResponse() + client.list_database_character_sets(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = database_character_set.ListDatabaseCharacterSetsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_goldengate_connection_assignments_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_assignments), "__call__" + ) as call: + call.return_value = goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse() + client.list_goldengate_connection_assignments(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_get_goldengate_connection_assignment_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection_assignment), "__call__" + ) as call: + call.return_value = ( + goldengate_connection_assignment.GoldengateConnectionAssignment() + ) + client.get_goldengate_connection_assignment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = ( + goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest() + ) + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_create_goldengate_connection_assignment_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_connection_assignment), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.create_goldengate_connection_assignment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_delete_goldengate_connection_assignment_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_connection_assignment), "__call__" + ) as call: + call.return_value = operations_pb2.Operation(name="operations/op") + client.delete_goldengate_connection_assignment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_test_goldengate_connection_assignment_empty_call_grpc(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="grpc", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.test_goldengate_connection_assignment), "__call__" + ) as call: + call.return_value = goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse() + client.test_goldengate_connection_assignment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = ( + goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest() + ) + assert args[0] == request_msg + + +def test_transport_kind_grpc_asyncio(): + transport = OracleDatabaseAsyncClient.get_transport_class("grpc_asyncio")( + credentials=async_anonymous_credentials() + ) + assert transport.kind == "grpc_asyncio" + + +def test_initialize_client_w_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), transport="grpc_asyncio" + ) + assert client is not None + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_cloud_exadata_infrastructures_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_cloud_exadata_infrastructures), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + oracledatabase.ListCloudExadataInfrastructuresResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) + ) + await client.list_cloud_exadata_infrastructures(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.ListCloudExadataInfrastructuresRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_get_cloud_exadata_infrastructure_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_cloud_exadata_infrastructure), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + exadata_infra.CloudExadataInfrastructure( + name="name_value", + display_name="display_name_value", + gcp_oracle_zone="gcp_oracle_zone_value", + entitlement_id="entitlement_id_value", + ) + ) + await client.get_cloud_exadata_infrastructure(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.GetCloudExadataInfrastructureRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_create_cloud_exadata_infrastructure_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.create_cloud_exadata_infrastructure), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.create_cloud_exadata_infrastructure(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.CreateCloudExadataInfrastructureRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_delete_cloud_exadata_infrastructure_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.delete_cloud_exadata_infrastructure), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.delete_cloud_exadata_infrastructure(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.DeleteCloudExadataInfrastructureRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_cloud_vm_clusters_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_cloud_vm_clusters), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + oracledatabase.ListCloudVmClustersResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) + ) + await client.list_cloud_vm_clusters(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.ListCloudVmClustersRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_get_cloud_vm_cluster_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_cloud_vm_cluster), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + vm_cluster.CloudVmCluster( + name="name_value", + exadata_infrastructure="exadata_infrastructure_value", + display_name="display_name_value", + cidr="cidr_value", + backup_subnet_cidr="backup_subnet_cidr_value", + network="network_value", + gcp_oracle_zone="gcp_oracle_zone_value", + odb_network="odb_network_value", + odb_subnet="odb_subnet_value", + backup_odb_subnet="backup_odb_subnet_value", + ) + ) + await client.get_cloud_vm_cluster(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.GetCloudVmClusterRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_create_cloud_vm_cluster_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.create_cloud_vm_cluster), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.create_cloud_vm_cluster(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.CreateCloudVmClusterRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_delete_cloud_vm_cluster_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.delete_cloud_vm_cluster), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.delete_cloud_vm_cluster(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.DeleteCloudVmClusterRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_entitlements_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_entitlements), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + oracledatabase.ListEntitlementsResponse( + next_page_token="next_page_token_value", + ) + ) + await client.list_entitlements(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.ListEntitlementsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_db_servers_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object(type(client.transport.list_db_servers), "__call__") as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + oracledatabase.ListDbServersResponse( + next_page_token="next_page_token_value", + ) + ) + await client.list_db_servers(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.ListDbServersRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_db_nodes_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object(type(client.transport.list_db_nodes), "__call__") as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + oracledatabase.ListDbNodesResponse( + next_page_token="next_page_token_value", + ) + ) + await client.list_db_nodes(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.ListDbNodesRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_gi_versions_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object(type(client.transport.list_gi_versions), "__call__") as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + oracledatabase.ListGiVersionsResponse( + next_page_token="next_page_token_value", + ) + ) + await client.list_gi_versions(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.ListGiVersionsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_minor_versions_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_minor_versions), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + minor_version.ListMinorVersionsResponse( + next_page_token="next_page_token_value", + ) + ) + await client.list_minor_versions(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = minor_version.ListMinorVersionsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_db_system_shapes_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_db_system_shapes), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + oracledatabase.ListDbSystemShapesResponse( + next_page_token="next_page_token_value", + ) + ) + await client.list_db_system_shapes(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.ListDbSystemShapesRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_autonomous_databases_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_autonomous_databases), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + oracledatabase.ListAutonomousDatabasesResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) + ) + await client.list_autonomous_databases(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.ListAutonomousDatabasesRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_get_autonomous_database_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_autonomous_database), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + autonomous_database.AutonomousDatabase( + name="name_value", + database="database_value", + display_name="display_name_value", + entitlement_id="entitlement_id_value", + admin_password="admin_password_value", + admin_password_secret_version="admin_password_secret_version_value", + network="network_value", + cidr="cidr_value", + odb_network="odb_network_value", + odb_subnet="odb_subnet_value", + peer_autonomous_databases=["peer_autonomous_databases_value"], + disaster_recovery_supported_locations=[ + "disaster_recovery_supported_locations_value" + ], + ) + ) + await client.get_autonomous_database(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.GetAutonomousDatabaseRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_create_autonomous_database_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.create_autonomous_database), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.create_autonomous_database(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.CreateAutonomousDatabaseRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_update_autonomous_database_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.update_autonomous_database), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.update_autonomous_database(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.UpdateAutonomousDatabaseRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_delete_autonomous_database_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.delete_autonomous_database), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.delete_autonomous_database(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.DeleteAutonomousDatabaseRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_restore_autonomous_database_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.restore_autonomous_database), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.restore_autonomous_database(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.RestoreAutonomousDatabaseRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_generate_autonomous_database_wallet_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.generate_autonomous_database_wallet), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + oracledatabase.GenerateAutonomousDatabaseWalletResponse( + archive_content=b"archive_content_blob", + ) + ) + await client.generate_autonomous_database_wallet(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.GenerateAutonomousDatabaseWalletRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_autonomous_db_versions_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_autonomous_db_versions), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + oracledatabase.ListAutonomousDbVersionsResponse( + next_page_token="next_page_token_value", + ) + ) + await client.list_autonomous_db_versions(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.ListAutonomousDbVersionsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_autonomous_database_character_sets_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_autonomous_database_character_sets), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + oracledatabase.ListAutonomousDatabaseCharacterSetsResponse( + next_page_token="next_page_token_value", + ) + ) + await client.list_autonomous_database_character_sets(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.ListAutonomousDatabaseCharacterSetsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_autonomous_database_backups_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_autonomous_database_backups), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + oracledatabase.ListAutonomousDatabaseBackupsResponse( + next_page_token="next_page_token_value", + ) + ) + await client.list_autonomous_database_backups(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.ListAutonomousDatabaseBackupsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_stop_autonomous_database_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.stop_autonomous_database), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.stop_autonomous_database(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.StopAutonomousDatabaseRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_start_autonomous_database_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.start_autonomous_database), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.start_autonomous_database(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.StartAutonomousDatabaseRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_restart_autonomous_database_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.restart_autonomous_database), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.restart_autonomous_database(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.RestartAutonomousDatabaseRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_switchover_autonomous_database_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.switchover_autonomous_database), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.switchover_autonomous_database(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.SwitchoverAutonomousDatabaseRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_failover_autonomous_database_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.failover_autonomous_database), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.failover_autonomous_database(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.FailoverAutonomousDatabaseRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_odb_networks_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_odb_networks), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + odb_network.ListOdbNetworksResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) + ) + await client.list_odb_networks(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = odb_network.ListOdbNetworksRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_get_odb_network_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object(type(client.transport.get_odb_network), "__call__") as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + odb_network.OdbNetwork( + name="name_value", + network="network_value", + state=odb_network.OdbNetwork.State.PROVISIONING, + entitlement_id="entitlement_id_value", + gcp_oracle_zone="gcp_oracle_zone_value", + ) + ) + await client.get_odb_network(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = odb_network.GetOdbNetworkRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_create_odb_network_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.create_odb_network), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.create_odb_network(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = gco_odb_network.CreateOdbNetworkRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_delete_odb_network_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.delete_odb_network), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.delete_odb_network(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = odb_network.DeleteOdbNetworkRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_odb_subnets_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object(type(client.transport.list_odb_subnets), "__call__") as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + odb_subnet.ListOdbSubnetsResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) + ) + await client.list_odb_subnets(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = odb_subnet.ListOdbSubnetsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_get_odb_subnet_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object(type(client.transport.get_odb_subnet), "__call__") as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + odb_subnet.OdbSubnet( + name="name_value", + cidr_range="cidr_range_value", + purpose=odb_subnet.OdbSubnet.Purpose.CLIENT_SUBNET, + state=odb_subnet.OdbSubnet.State.PROVISIONING, + ) + ) + await client.get_odb_subnet(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = odb_subnet.GetOdbSubnetRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_create_odb_subnet_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.create_odb_subnet), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.create_odb_subnet(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = gco_odb_subnet.CreateOdbSubnetRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_delete_odb_subnet_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.delete_odb_subnet), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.delete_odb_subnet(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = odb_subnet.DeleteOdbSubnetRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_exadb_vm_clusters_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_exadb_vm_clusters), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + oracledatabase.ListExadbVmClustersResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) + ) + await client.list_exadb_vm_clusters(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.ListExadbVmClustersRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_get_exadb_vm_cluster_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_exadb_vm_cluster), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + exadb_vm_cluster.ExadbVmCluster( + name="name_value", + gcp_oracle_zone="gcp_oracle_zone_value", + odb_network="odb_network_value", + odb_subnet="odb_subnet_value", + backup_odb_subnet="backup_odb_subnet_value", + display_name="display_name_value", + entitlement_id="entitlement_id_value", + ) + ) + await client.get_exadb_vm_cluster(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.GetExadbVmClusterRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_create_exadb_vm_cluster_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.create_exadb_vm_cluster), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.create_exadb_vm_cluster(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.CreateExadbVmClusterRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_delete_exadb_vm_cluster_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.delete_exadb_vm_cluster), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.delete_exadb_vm_cluster(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.DeleteExadbVmClusterRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_update_exadb_vm_cluster_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.update_exadb_vm_cluster), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.update_exadb_vm_cluster(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.UpdateExadbVmClusterRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_remove_virtual_machine_exadb_vm_cluster_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.remove_virtual_machine_exadb_vm_cluster), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.remove_virtual_machine_exadb_vm_cluster(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = oracledatabase.RemoveVirtualMachineExadbVmClusterRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_exascale_db_storage_vaults_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_exascale_db_storage_vaults), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) + ) + await client.list_exascale_db_storage_vaults(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_get_exascale_db_storage_vault_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_exascale_db_storage_vault), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + exascale_db_storage_vault.ExascaleDbStorageVault( + name="name_value", + display_name="display_name_value", + gcp_oracle_zone="gcp_oracle_zone_value", + entitlement_id="entitlement_id_value", + ) + ) + await client.get_exascale_db_storage_vault(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = exascale_db_storage_vault.GetExascaleDbStorageVaultRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_create_exascale_db_storage_vault_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.create_exascale_db_storage_vault), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.create_exascale_db_storage_vault(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = ( + gco_exascale_db_storage_vault.CreateExascaleDbStorageVaultRequest() + ) + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_delete_exascale_db_storage_vault_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.delete_exascale_db_storage_vault), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.delete_exascale_db_storage_vault(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = exascale_db_storage_vault.DeleteExascaleDbStorageVaultRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_db_system_initial_storage_sizes_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_db_system_initial_storage_sizes), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse( + next_page_token="next_page_token_value", + ) + ) + await client.list_db_system_initial_storage_sizes(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = ( + db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest() + ) + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_databases_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object(type(client.transport.list_databases), "__call__") as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + database.ListDatabasesResponse( + next_page_token="next_page_token_value", + ) + ) + await client.list_databases(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = database.ListDatabasesRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_get_database_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object(type(client.transport.get_database), "__call__") as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + database.Database( + name="name_value", + db_name="db_name_value", + db_unique_name="db_unique_name_value", + admin_password="admin_password_value", + admin_password_secret_version="admin_password_secret_version_value", + tde_wallet_password="tde_wallet_password_value", + tde_wallet_password_secret_version="tde_wallet_password_secret_version_value", + character_set="character_set_value", + ncharacter_set="ncharacter_set_value", + oci_url="oci_url_value", + database_id="database_id_value", + db_home_name="db_home_name_value", + gcp_oracle_zone="gcp_oracle_zone_value", + ops_insights_status=database.Database.OperationsInsightsStatus.ENABLING, + pluggable_database_id="pluggable_database_id_value", + pluggable_database_name="pluggable_database_name_value", + ) + ) + await client.get_database(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = database.GetDatabaseRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_pluggable_databases_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_pluggable_databases), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + pluggable_database.ListPluggableDatabasesResponse( + next_page_token="next_page_token_value", + ) + ) + await client.list_pluggable_databases(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = pluggable_database.ListPluggableDatabasesRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_get_pluggable_database_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_pluggable_database), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + pluggable_database.PluggableDatabase( + name="name_value", + oci_url="oci_url_value", + ) + ) + await client.get_pluggable_database(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = pluggable_database.GetPluggableDatabaseRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_db_systems_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object(type(client.transport.list_db_systems), "__call__") as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + db_system.ListDbSystemsResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) + ) + await client.list_db_systems(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = db_system.ListDbSystemsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_get_db_system_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object(type(client.transport.get_db_system), "__call__") as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + db_system.DbSystem( + name="name_value", + gcp_oracle_zone="gcp_oracle_zone_value", + odb_network="odb_network_value", + odb_subnet="odb_subnet_value", + entitlement_id="entitlement_id_value", + display_name="display_name_value", + oci_url="oci_url_value", + ) + ) + await client.get_db_system(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = db_system.GetDbSystemRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_create_db_system_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object(type(client.transport.create_db_system), "__call__") as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.create_db_system(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = gco_db_system.CreateDbSystemRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_delete_db_system_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object(type(client.transport.delete_db_system), "__call__") as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.delete_db_system(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = db_system.DeleteDbSystemRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_goldengate_deployments_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployments), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_deployment.ListGoldengateDeploymentsResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) + ) + await client.list_goldengate_deployments(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment.ListGoldengateDeploymentsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_get_goldengate_deployment_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_deployment.GoldengateDeployment( + name="name_value", + gcp_oracle_zone="gcp_oracle_zone_value", + odb_network="odb_network_value", + odb_subnet="odb_subnet_value", + entitlement_id="entitlement_id_value", + display_name="display_name_value", + oci_url="oci_url_value", + ) + ) + await client.get_goldengate_deployment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment.GetGoldengateDeploymentRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_create_goldengate_deployment_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_deployment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.create_goldengate_deployment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = gco_goldengate_deployment.CreateGoldengateDeploymentRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_delete_goldengate_deployment_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_deployment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.delete_goldengate_deployment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment.DeleteGoldengateDeploymentRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_stop_goldengate_deployment_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.stop_goldengate_deployment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.stop_goldengate_deployment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment.StopGoldengateDeploymentRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_start_goldengate_deployment_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.start_goldengate_deployment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.start_goldengate_deployment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment.StartGoldengateDeploymentRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_goldengate_connections_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connections), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection.ListGoldengateConnectionsResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) + ) + await client.list_goldengate_connections(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_connection.ListGoldengateConnectionsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_get_goldengate_connection_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection.GoldengateConnection( + name="name_value", + gcp_oracle_zone="gcp_oracle_zone_value", + odb_network="odb_network_value", + odb_subnet="odb_subnet_value", + entitlement_id="entitlement_id_value", + oci_url="oci_url_value", + ) + ) + await client.get_goldengate_connection(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_connection.GetGoldengateConnectionRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_create_goldengate_connection_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_connection), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.create_goldengate_connection(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = gco_goldengate_connection.CreateGoldengateConnectionRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_delete_goldengate_connection_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_connection), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.delete_goldengate_connection(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_connection.DeleteGoldengateConnectionRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_get_goldengate_deployment_version_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_version), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_deployment_version.GoldengateDeploymentVersion( + name="name_value", + ocid="ocid_value", + ) + ) + await client.get_goldengate_deployment_version(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = ( + goldengate_deployment_version.GetGoldengateDeploymentVersionRequest() + ) + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_goldengate_deployment_versions_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_versions), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) + ) + await client.list_goldengate_deployment_versions(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest() + ) + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_get_goldengate_deployment_type_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_type), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_deployment_type.GoldengateDeploymentType( + name="name_value", + deployment_type=goldengate_deployment_type.GoldengateDeploymentType.DeploymentType.OGG, + category=goldengate_deployment_type.GoldengateDeploymentType.DeploymentCategory.DATA_REPLICATION_CATEGORY, + connection_types=["connection_types_value"], + display_name="display_name_value", + ogg_version="ogg_version_value", + source_technologies=["source_technologies_value"], + supported_capabilities=["supported_capabilities_value"], + supported_technologies_url="supported_technologies_url_value", + target_technologies=["target_technologies_value"], + default_username="default_username_value", + ) + ) + await client.get_goldengate_deployment_type(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment_type.GetGoldengateDeploymentTypeRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_goldengate_deployment_types_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_types), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) + ) + await client.list_goldengate_deployment_types(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment_type.ListGoldengateDeploymentTypesRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_get_goldengate_deployment_environment_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_environment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_deployment_environment.GoldengateDeploymentEnvironment( + name="name_value", + category=goldengate_deployment_environment.GoldengateDeploymentEnvironment.DeploymentCategory.DATA_REPLICATION_CATEGORY, + display_name="display_name_value", + default_cpu_core_count=2332, + environment_type=goldengate_deployment_environment.GoldengateDeploymentEnvironment.DeploymentEnvironmentType.PRODUCTION, + auto_scaling_enabled=True, + max_cpu_core_count=1917, + memory_gb_per_cpu_core=2326, + min_cpu_core_count=1915, + network_bandwidth_gbps_per_cpu_core=3710, + storage_usage_limit_gb_per_cpu_core=3684, + ) + ) + await client.get_goldengate_deployment_environment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_goldengate_deployment_environments_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_environments), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) + ) + await client.list_goldengate_deployment_environments(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_get_goldengate_connection_type_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection_type), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection_type.GoldengateConnectionType( + name="name_value", + connection_type=goldengate_connection_type.GoldengateConnectionType.ConnectionType.GOLDENGATE, + technology_types=["technology_types_value"], + ) + ) + await client.get_goldengate_connection_type(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_connection_type.GetGoldengateConnectionTypeRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_goldengate_connection_types_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_types), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection_type.ListGoldengateConnectionTypesResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) + ) + await client.list_goldengate_connection_types(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_connection_type.ListGoldengateConnectionTypesRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_db_versions_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object(type(client.transport.list_db_versions), "__call__") as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + db_version.ListDbVersionsResponse( + next_page_token="next_page_token_value", + ) + ) + await client.list_db_versions(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = db_version.ListDbVersionsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_database_character_sets_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_database_character_sets), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + database_character_set.ListDatabaseCharacterSetsResponse( + next_page_token="next_page_token_value", + ) + ) + await client.list_database_character_sets(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = database_character_set.ListDatabaseCharacterSetsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_list_goldengate_connection_assignments_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_assignments), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) + ) + await client.list_goldengate_connection_assignments(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_get_goldengate_connection_assignment_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection_assignment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection_assignment.GoldengateConnectionAssignment( + name="name_value", + display_name="display_name_value", + entitlement_id="entitlement_id_value", + ) + ) + await client.get_goldengate_connection_assignment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = ( + goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest() + ) + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_create_goldengate_connection_assignment_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_connection_assignment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.create_goldengate_connection_assignment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_delete_goldengate_connection_assignment_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_connection_assignment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + operations_pb2.Operation(name="operations/spam") + ) + await client.delete_goldengate_connection_assignment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +@pytest.mark.asyncio +async def test_test_goldengate_connection_assignment_empty_call_grpc_asyncio(): + client = OracleDatabaseAsyncClient( + credentials=async_anonymous_credentials(), + transport="grpc_asyncio", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.test_goldengate_connection_assignment), "__call__" + ) as call: + # Designate an appropriate return value for the call. + call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( + goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse( + result_type=goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse.ResultType.SUCCEEDED, + ) + ) + await client.test_goldengate_connection_assignment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = ( + goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest() + ) + assert args[0] == request_msg + + +def test_transport_kind_rest(): + transport = OracleDatabaseClient.get_transport_class("rest")( + credentials=ga_credentials.AnonymousCredentials() + ) + assert transport.kind == "rest" + + +def test_list_cloud_exadata_infrastructures_rest_bad_request( + request_type=oracledatabase.ListCloudExadataInfrastructuresRequest, +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = {"parent": "projects/sample1/locations/sample2"} + request = request_type(**request_init) + + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.list_cloud_exadata_infrastructures(request) + + +@pytest.mark.parametrize( + "request_type", + [ + oracledatabase.ListCloudExadataInfrastructuresRequest, + dict, + ], +) +def test_list_cloud_exadata_infrastructures_rest_call_success(request_type): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + # send a request that will satisfy transcoding + request_init = {"parent": "projects/sample1/locations/sample2"} + request = request_type(**request_init) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = oracledatabase.ListCloudExadataInfrastructuresResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) + + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = oracledatabase.ListCloudExadataInfrastructuresResponse.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.list_cloud_exadata_infrastructures(request) + + # Establish that the response is the type that we expect. + assert isinstance(response, pagers.ListCloudExadataInfrastructuresPager) + assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] + + +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_list_cloud_exadata_infrastructures_rest_interceptors(null_interceptor): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.OracleDatabaseRestInterceptor(), + ) + client = OracleDatabaseClient(transport=transport) + + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_list_cloud_exadata_infrastructures", + ) as post, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_list_cloud_exadata_infrastructures_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "pre_list_cloud_exadata_infrastructures", + ) as pre, + ): + pre.assert_not_called() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = oracledatabase.ListCloudExadataInfrastructuresRequest.pb( + oracledatabase.ListCloudExadataInfrastructuresRequest() + ) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } + + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = oracledatabase.ListCloudExadataInfrastructuresResponse.to_json( + oracledatabase.ListCloudExadataInfrastructuresResponse() + ) + req.return_value.content = return_value + + request = oracledatabase.ListCloudExadataInfrastructuresRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + post.return_value = oracledatabase.ListCloudExadataInfrastructuresResponse() + post_with_metadata.return_value = ( + oracledatabase.ListCloudExadataInfrastructuresResponse(), + metadata, + ) + + client.list_cloud_exadata_infrastructures( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + + pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() + + +def test_get_cloud_exadata_infrastructure_rest_bad_request( + request_type=oracledatabase.GetCloudExadataInfrastructureRequest, +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/cloudExadataInfrastructures/sample3" + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.get_cloud_exadata_infrastructure(request) + + +@pytest.mark.parametrize( + "request_type", + [ + oracledatabase.GetCloudExadataInfrastructureRequest, + dict, + ], +) +def test_get_cloud_exadata_infrastructure_rest_call_success(request_type): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/cloudExadataInfrastructures/sample3" + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = exadata_infra.CloudExadataInfrastructure( + name="name_value", + display_name="display_name_value", + gcp_oracle_zone="gcp_oracle_zone_value", + entitlement_id="entitlement_id_value", + ) + + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = exadata_infra.CloudExadataInfrastructure.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.get_cloud_exadata_infrastructure(request) + + # Establish that the response is the type that we expect. + assert isinstance(response, exadata_infra.CloudExadataInfrastructure) + assert response.name == "name_value" + assert response.display_name == "display_name_value" + assert response.gcp_oracle_zone == "gcp_oracle_zone_value" + assert response.entitlement_id == "entitlement_id_value" + + +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_get_cloud_exadata_infrastructure_rest_interceptors(null_interceptor): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.OracleDatabaseRestInterceptor(), + ) + client = OracleDatabaseClient(transport=transport) + + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_get_cloud_exadata_infrastructure", + ) as post, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_get_cloud_exadata_infrastructure_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "pre_get_cloud_exadata_infrastructure", + ) as pre, + ): + pre.assert_not_called() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = oracledatabase.GetCloudExadataInfrastructureRequest.pb( + oracledatabase.GetCloudExadataInfrastructureRequest() + ) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } + + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = exadata_infra.CloudExadataInfrastructure.to_json( + exadata_infra.CloudExadataInfrastructure() + ) + req.return_value.content = return_value + + request = oracledatabase.GetCloudExadataInfrastructureRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + post.return_value = exadata_infra.CloudExadataInfrastructure() + post_with_metadata.return_value = ( + exadata_infra.CloudExadataInfrastructure(), + metadata, + ) + + client.get_cloud_exadata_infrastructure( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + + pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() + + +def test_create_cloud_exadata_infrastructure_rest_bad_request( + request_type=oracledatabase.CreateCloudExadataInfrastructureRequest, +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = {"parent": "projects/sample1/locations/sample2"} + request = request_type(**request_init) + + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.create_cloud_exadata_infrastructure(request) + + +@pytest.mark.parametrize( + "request_type", + [ + oracledatabase.CreateCloudExadataInfrastructureRequest, + dict, + ], +) +def test_create_cloud_exadata_infrastructure_rest_call_success(request_type): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + # send a request that will satisfy transcoding + request_init = {"parent": "projects/sample1/locations/sample2"} + request_init["cloud_exadata_infrastructure"] = { + "name": "name_value", + "display_name": "display_name_value", + "gcp_oracle_zone": "gcp_oracle_zone_value", + "entitlement_id": "entitlement_id_value", + "properties": { + "ocid": "ocid_value", + "compute_count": 1413, + "storage_count": 1405, + "total_storage_size_gb": 2234, + "available_storage_size_gb": 2615, + "maintenance_window": { + "preference": 1, + "months": [1], + "weeks_of_month": [1497, 1498], + "days_of_week": [1], + "hours_of_day": [1283, 1284], + "lead_time_week": 1455, + "patching_mode": 1, + "custom_action_timeout_mins": 2804, + "is_custom_action_timeout_enabled": True, + }, + "state": 1, + "shape": "shape_value", + "oci_url": "oci_url_value", + "cpu_count": 976, + "max_cpu_count": 1397, + "memory_size_gb": 1499, + "max_memory_gb": 1382, + "db_node_storage_size_gb": 2401, + "max_db_node_storage_size_gb": 2822, + "data_storage_size_tb": 0.2109, + "max_data_storage_tb": 0.19920000000000002, + "activated_storage_count": 2449, + "additional_storage_count": 2549, + "db_server_version": "db_server_version_value", + "storage_server_version": "storage_server_version_value", + "next_maintenance_run_id": "next_maintenance_run_id_value", + "next_maintenance_run_time": {"seconds": 751, "nanos": 543}, + "next_security_maintenance_run_time": {}, + "customer_contacts": [{"email": "email_value"}], + "monthly_storage_server_version": "monthly_storage_server_version_value", + "monthly_db_server_version": "monthly_db_server_version_value", + "compute_model": 1, + "database_server_type": "database_server_type_value", + "storage_server_type": "storage_server_type_value", + }, + "labels": {}, + "create_time": {}, + } + # The version of a generated dependency at test runtime may differ from the version used during generation. + # Delete any fields which are not present in the current runtime dependency + # See https://github.com/googleapis/gapic-generator-python/issues/1748 + + # Determine if the message type is proto-plus or protobuf + test_field = oracledatabase.CreateCloudExadataInfrastructureRequest.meta.fields[ + "cloud_exadata_infrastructure" + ] + + def get_message_fields(field): + # Given a field which is a message (composite type), return a list with + # all the fields of the message. + # If the field is not a composite type, return an empty list. + message_fields = [] + + if hasattr(field, "message") and field.message: + is_field_type_proto_plus_type = not hasattr(field.message, "DESCRIPTOR") + + if is_field_type_proto_plus_type: + message_fields = field.message.meta.fields.values() + # Add `# pragma: NO COVER` because there may not be any `*_pb2` field types + else: # pragma: NO COVER + message_fields = field.message.DESCRIPTOR.fields + return message_fields + + runtime_nested_fields = [ + (field.name, nested_field.name) + for field in get_message_fields(test_field) + for nested_field in get_message_fields(field) + ] + + subfields_not_in_runtime = [] + + # For each item in the sample request, create a list of sub fields which are not present at runtime + # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime + for field, value in request_init[ + "cloud_exadata_infrastructure" + ].items(): # pragma: NO COVER + result = None + is_repeated = False + # For repeated fields + if isinstance(value, list) and len(value): + is_repeated = True + result = value[0] + # For fields where the type is another message + if isinstance(value, dict): + result = value + + if result and hasattr(result, "keys"): + for subfield in result.keys(): + if (field, subfield) not in runtime_nested_fields: + subfields_not_in_runtime.append( + { + "field": field, + "subfield": subfield, + "is_repeated": is_repeated, + } + ) + + # Remove fields from the sample request which are not present in the runtime version of the dependency + # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime + for subfield_to_delete in subfields_not_in_runtime: # pragma: NO COVER + field = subfield_to_delete.get("field") + field_repeated = subfield_to_delete.get("is_repeated") + subfield = subfield_to_delete.get("subfield") + if subfield: + if field_repeated: + for i in range( + 0, len(request_init["cloud_exadata_infrastructure"][field]) + ): + del request_init["cloud_exadata_infrastructure"][field][i][subfield] + else: + del request_init["cloud_exadata_infrastructure"][field][subfield] + request = request_type(**request_init) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.create_cloud_exadata_infrastructure(request) + + # Establish that the response is the type that we expect. + json_return_value = json_format.MessageToJson(return_value) + + +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_create_cloud_exadata_infrastructure_rest_interceptors(null_interceptor): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.OracleDatabaseRestInterceptor(), + ) + client = OracleDatabaseClient(transport=transport) + + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object(operation.Operation, "_set_result_from_operation"), + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_create_cloud_exadata_infrastructure", + ) as post, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_create_cloud_exadata_infrastructure_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "pre_create_cloud_exadata_infrastructure", + ) as pre, + ): + pre.assert_not_called() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = oracledatabase.CreateCloudExadataInfrastructureRequest.pb( + oracledatabase.CreateCloudExadataInfrastructureRequest() + ) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } + + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = json_format.MessageToJson(operations_pb2.Operation()) + req.return_value.content = return_value + + request = oracledatabase.CreateCloudExadataInfrastructureRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + post.return_value = operations_pb2.Operation() + post_with_metadata.return_value = operations_pb2.Operation(), metadata + + client.create_cloud_exadata_infrastructure( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + + pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() + + +def test_delete_cloud_exadata_infrastructure_rest_bad_request( + request_type=oracledatabase.DeleteCloudExadataInfrastructureRequest, +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/cloudExadataInfrastructures/sample3" + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.delete_cloud_exadata_infrastructure(request) + + +@pytest.mark.parametrize( + "request_type", + [ + oracledatabase.DeleteCloudExadataInfrastructureRequest, + dict, + ], +) +def test_delete_cloud_exadata_infrastructure_rest_call_success(request_type): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/cloudExadataInfrastructures/sample3" + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.delete_cloud_exadata_infrastructure(request) + + # Establish that the response is the type that we expect. + json_return_value = json_format.MessageToJson(return_value) + + +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_delete_cloud_exadata_infrastructure_rest_interceptors(null_interceptor): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.OracleDatabaseRestInterceptor(), + ) + client = OracleDatabaseClient(transport=transport) + + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object(operation.Operation, "_set_result_from_operation"), + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_delete_cloud_exadata_infrastructure", + ) as post, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_delete_cloud_exadata_infrastructure_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "pre_delete_cloud_exadata_infrastructure", + ) as pre, + ): + pre.assert_not_called() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = oracledatabase.DeleteCloudExadataInfrastructureRequest.pb( + oracledatabase.DeleteCloudExadataInfrastructureRequest() + ) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } + + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = json_format.MessageToJson(operations_pb2.Operation()) + req.return_value.content = return_value + + request = oracledatabase.DeleteCloudExadataInfrastructureRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + post.return_value = operations_pb2.Operation() + post_with_metadata.return_value = operations_pb2.Operation(), metadata + + client.delete_cloud_exadata_infrastructure( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + + pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() + + +def test_list_cloud_vm_clusters_rest_bad_request( + request_type=oracledatabase.ListCloudVmClustersRequest, +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = {"parent": "projects/sample1/locations/sample2"} + request = request_type(**request_init) + + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.list_cloud_vm_clusters(request) + + +@pytest.mark.parametrize( + "request_type", + [ + oracledatabase.ListCloudVmClustersRequest, + dict, + ], +) +def test_list_cloud_vm_clusters_rest_call_success(request_type): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + # send a request that will satisfy transcoding + request_init = {"parent": "projects/sample1/locations/sample2"} + request = request_type(**request_init) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = oracledatabase.ListCloudVmClustersResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) + + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = oracledatabase.ListCloudVmClustersResponse.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.list_cloud_vm_clusters(request) + + # Establish that the response is the type that we expect. + assert isinstance(response, pagers.ListCloudVmClustersPager) + assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] + + +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_list_cloud_vm_clusters_rest_interceptors(null_interceptor): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.OracleDatabaseRestInterceptor(), + ) + client = OracleDatabaseClient(transport=transport) + + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "post_list_cloud_vm_clusters" + ) as post, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_list_cloud_vm_clusters_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "pre_list_cloud_vm_clusters" + ) as pre, + ): + pre.assert_not_called() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = oracledatabase.ListCloudVmClustersRequest.pb( + oracledatabase.ListCloudVmClustersRequest() + ) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } + + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = oracledatabase.ListCloudVmClustersResponse.to_json( + oracledatabase.ListCloudVmClustersResponse() + ) + req.return_value.content = return_value + + request = oracledatabase.ListCloudVmClustersRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + post.return_value = oracledatabase.ListCloudVmClustersResponse() + post_with_metadata.return_value = ( + oracledatabase.ListCloudVmClustersResponse(), + metadata, + ) + + client.list_cloud_vm_clusters( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + + pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() + + +def test_get_cloud_vm_cluster_rest_bad_request( + request_type=oracledatabase.GetCloudVmClusterRequest, +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/cloudVmClusters/sample3" + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.get_cloud_vm_cluster(request) + + +@pytest.mark.parametrize( + "request_type", + [ + oracledatabase.GetCloudVmClusterRequest, + dict, + ], +) +def test_get_cloud_vm_cluster_rest_call_success(request_type): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/cloudVmClusters/sample3" + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = vm_cluster.CloudVmCluster( + name="name_value", + exadata_infrastructure="exadata_infrastructure_value", + display_name="display_name_value", + cidr="cidr_value", + backup_subnet_cidr="backup_subnet_cidr_value", + network="network_value", + gcp_oracle_zone="gcp_oracle_zone_value", + odb_network="odb_network_value", + odb_subnet="odb_subnet_value", + backup_odb_subnet="backup_odb_subnet_value", + ) + + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = vm_cluster.CloudVmCluster.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.get_cloud_vm_cluster(request) + + # Establish that the response is the type that we expect. + assert isinstance(response, vm_cluster.CloudVmCluster) + assert response.name == "name_value" + assert response.exadata_infrastructure == "exadata_infrastructure_value" + assert response.display_name == "display_name_value" + assert response.cidr == "cidr_value" + assert response.backup_subnet_cidr == "backup_subnet_cidr_value" + assert response.network == "network_value" + assert response.gcp_oracle_zone == "gcp_oracle_zone_value" + assert response.odb_network == "odb_network_value" + assert response.odb_subnet == "odb_subnet_value" + assert response.backup_odb_subnet == "backup_odb_subnet_value" + + +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_get_cloud_vm_cluster_rest_interceptors(null_interceptor): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.OracleDatabaseRestInterceptor(), + ) + client = OracleDatabaseClient(transport=transport) + + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "post_get_cloud_vm_cluster" + ) as post, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_get_cloud_vm_cluster_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "pre_get_cloud_vm_cluster" + ) as pre, + ): + pre.assert_not_called() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = oracledatabase.GetCloudVmClusterRequest.pb( + oracledatabase.GetCloudVmClusterRequest() + ) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } + + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = vm_cluster.CloudVmCluster.to_json(vm_cluster.CloudVmCluster()) + req.return_value.content = return_value + + request = oracledatabase.GetCloudVmClusterRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + post.return_value = vm_cluster.CloudVmCluster() + post_with_metadata.return_value = vm_cluster.CloudVmCluster(), metadata + + client.get_cloud_vm_cluster( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + + pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() + + +def test_create_cloud_vm_cluster_rest_bad_request( + request_type=oracledatabase.CreateCloudVmClusterRequest, +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = {"parent": "projects/sample1/locations/sample2"} + request = request_type(**request_init) + + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.create_cloud_vm_cluster(request) + + +@pytest.mark.parametrize( + "request_type", + [ + oracledatabase.CreateCloudVmClusterRequest, + dict, + ], +) +def test_create_cloud_vm_cluster_rest_call_success(request_type): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + # send a request that will satisfy transcoding + request_init = {"parent": "projects/sample1/locations/sample2"} + request_init["cloud_vm_cluster"] = { + "name": "name_value", + "exadata_infrastructure": "exadata_infrastructure_value", + "display_name": "display_name_value", + "properties": { + "ocid": "ocid_value", + "license_type": 1, + "gi_version": "gi_version_value", + "time_zone": {"id": "id_value", "version": "version_value"}, + "ssh_public_keys": ["ssh_public_keys_value1", "ssh_public_keys_value2"], + "node_count": 1070, + "shape": "shape_value", + "ocpu_count": 0.1087, + "memory_size_gb": 1499, + "db_node_storage_size_gb": 2401, + "storage_size_gb": 1591, + "data_storage_size_tb": 0.2109, + "disk_redundancy": 1, + "sparse_diskgroup_enabled": True, + "local_backup_enabled": True, + "hostname_prefix": "hostname_prefix_value", + "diagnostics_data_collection_options": { + "diagnostics_events_enabled": True, + "health_monitoring_enabled": True, + "incident_logs_enabled": True, + }, + "state": 1, + "scan_listener_port_tcp": 2356, + "scan_listener_port_tcp_ssl": 2789, + "domain": "domain_value", + "scan_dns": "scan_dns_value", + "hostname": "hostname_value", + "cpu_core_count": 1496, + "system_version": "system_version_value", + "scan_ip_ids": ["scan_ip_ids_value1", "scan_ip_ids_value2"], + "scan_dns_record_id": "scan_dns_record_id_value", + "oci_url": "oci_url_value", + "db_server_ocids": ["db_server_ocids_value1", "db_server_ocids_value2"], + "compartment_id": "compartment_id_value", + "dns_listener_ip": "dns_listener_ip_value", + "cluster_name": "cluster_name_value", + "compute_model": 1, + }, + "labels": {}, + "create_time": {"seconds": 751, "nanos": 543}, + "cidr": "cidr_value", + "backup_subnet_cidr": "backup_subnet_cidr_value", + "network": "network_value", + "gcp_oracle_zone": "gcp_oracle_zone_value", + "odb_network": "odb_network_value", + "odb_subnet": "odb_subnet_value", + "backup_odb_subnet": "backup_odb_subnet_value", + "identity_connector": { + "service_agent_email": "service_agent_email_value", + "connection_state": 1, + }, + } + # The version of a generated dependency at test runtime may differ from the version used during generation. + # Delete any fields which are not present in the current runtime dependency + # See https://github.com/googleapis/gapic-generator-python/issues/1748 + + # Determine if the message type is proto-plus or protobuf + test_field = oracledatabase.CreateCloudVmClusterRequest.meta.fields[ + "cloud_vm_cluster" + ] + + def get_message_fields(field): + # Given a field which is a message (composite type), return a list with + # all the fields of the message. + # If the field is not a composite type, return an empty list. + message_fields = [] + + if hasattr(field, "message") and field.message: + is_field_type_proto_plus_type = not hasattr(field.message, "DESCRIPTOR") + + if is_field_type_proto_plus_type: + message_fields = field.message.meta.fields.values() + # Add `# pragma: NO COVER` because there may not be any `*_pb2` field types + else: # pragma: NO COVER + message_fields = field.message.DESCRIPTOR.fields + return message_fields + + runtime_nested_fields = [ + (field.name, nested_field.name) + for field in get_message_fields(test_field) + for nested_field in get_message_fields(field) + ] + + subfields_not_in_runtime = [] + + # For each item in the sample request, create a list of sub fields which are not present at runtime + # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime + for field, value in request_init["cloud_vm_cluster"].items(): # pragma: NO COVER + result = None + is_repeated = False + # For repeated fields + if isinstance(value, list) and len(value): + is_repeated = True + result = value[0] + # For fields where the type is another message + if isinstance(value, dict): + result = value + + if result and hasattr(result, "keys"): + for subfield in result.keys(): + if (field, subfield) not in runtime_nested_fields: + subfields_not_in_runtime.append( + { + "field": field, + "subfield": subfield, + "is_repeated": is_repeated, + } + ) + + # Remove fields from the sample request which are not present in the runtime version of the dependency + # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime + for subfield_to_delete in subfields_not_in_runtime: # pragma: NO COVER + field = subfield_to_delete.get("field") + field_repeated = subfield_to_delete.get("is_repeated") + subfield = subfield_to_delete.get("subfield") + if subfield: + if field_repeated: + for i in range(0, len(request_init["cloud_vm_cluster"][field])): + del request_init["cloud_vm_cluster"][field][i][subfield] + else: + del request_init["cloud_vm_cluster"][field][subfield] + request = request_type(**request_init) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.create_cloud_vm_cluster(request) + + # Establish that the response is the type that we expect. + json_return_value = json_format.MessageToJson(return_value) + + +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_create_cloud_vm_cluster_rest_interceptors(null_interceptor): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.OracleDatabaseRestInterceptor(), + ) + client = OracleDatabaseClient(transport=transport) + + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object(operation.Operation, "_set_result_from_operation"), + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "post_create_cloud_vm_cluster" + ) as post, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_create_cloud_vm_cluster_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "pre_create_cloud_vm_cluster" + ) as pre, + ): + pre.assert_not_called() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = oracledatabase.CreateCloudVmClusterRequest.pb( + oracledatabase.CreateCloudVmClusterRequest() + ) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } + + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = json_format.MessageToJson(operations_pb2.Operation()) + req.return_value.content = return_value + + request = oracledatabase.CreateCloudVmClusterRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + post.return_value = operations_pb2.Operation() + post_with_metadata.return_value = operations_pb2.Operation(), metadata + + client.create_cloud_vm_cluster( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + + pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() + + +def test_delete_cloud_vm_cluster_rest_bad_request( + request_type=oracledatabase.DeleteCloudVmClusterRequest, +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/cloudVmClusters/sample3" + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.delete_cloud_vm_cluster(request) + + +@pytest.mark.parametrize( + "request_type", + [ + oracledatabase.DeleteCloudVmClusterRequest, + dict, + ], +) +def test_delete_cloud_vm_cluster_rest_call_success(request_type): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/cloudVmClusters/sample3" + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.delete_cloud_vm_cluster(request) + + # Establish that the response is the type that we expect. + json_return_value = json_format.MessageToJson(return_value) + + +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_delete_cloud_vm_cluster_rest_interceptors(null_interceptor): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.OracleDatabaseRestInterceptor(), + ) + client = OracleDatabaseClient(transport=transport) + + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object(operation.Operation, "_set_result_from_operation"), + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "post_delete_cloud_vm_cluster" + ) as post, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_delete_cloud_vm_cluster_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "pre_delete_cloud_vm_cluster" + ) as pre, + ): + pre.assert_not_called() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = oracledatabase.DeleteCloudVmClusterRequest.pb( + oracledatabase.DeleteCloudVmClusterRequest() + ) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } + + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = json_format.MessageToJson(operations_pb2.Operation()) + req.return_value.content = return_value + + request = oracledatabase.DeleteCloudVmClusterRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + post.return_value = operations_pb2.Operation() + post_with_metadata.return_value = operations_pb2.Operation(), metadata + + client.delete_cloud_vm_cluster( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + + pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() + + +def test_list_entitlements_rest_bad_request( + request_type=oracledatabase.ListEntitlementsRequest, +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = {"parent": "projects/sample1/locations/sample2"} + request = request_type(**request_init) + + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.list_entitlements(request) + + +@pytest.mark.parametrize( + "request_type", + [ + oracledatabase.ListEntitlementsRequest, + dict, + ], +) +def test_list_entitlements_rest_call_success(request_type): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + # send a request that will satisfy transcoding + request_init = {"parent": "projects/sample1/locations/sample2"} + request = request_type(**request_init) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = oracledatabase.ListEntitlementsResponse( + next_page_token="next_page_token_value", + ) + + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = oracledatabase.ListEntitlementsResponse.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.list_entitlements(request) + + # Establish that the response is the type that we expect. + assert isinstance(response, pagers.ListEntitlementsPager) + assert response.next_page_token == "next_page_token_value" + + +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_list_entitlements_rest_interceptors(null_interceptor): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.OracleDatabaseRestInterceptor(), + ) + client = OracleDatabaseClient(transport=transport) + + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "post_list_entitlements" + ) as post, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_list_entitlements_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "pre_list_entitlements" + ) as pre, + ): + pre.assert_not_called() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = oracledatabase.ListEntitlementsRequest.pb( + oracledatabase.ListEntitlementsRequest() + ) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } + + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = oracledatabase.ListEntitlementsResponse.to_json( + oracledatabase.ListEntitlementsResponse() + ) + req.return_value.content = return_value + + request = oracledatabase.ListEntitlementsRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + post.return_value = oracledatabase.ListEntitlementsResponse() + post_with_metadata.return_value = ( + oracledatabase.ListEntitlementsResponse(), + metadata, + ) + + client.list_entitlements( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + + pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() + + +def test_list_db_servers_rest_bad_request( + request_type=oracledatabase.ListDbServersRequest, +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = { + "parent": "projects/sample1/locations/sample2/cloudExadataInfrastructures/sample3" + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.list_db_servers(request) + + +@pytest.mark.parametrize( + "request_type", + [ + oracledatabase.ListDbServersRequest, + dict, + ], +) +def test_list_db_servers_rest_call_success(request_type): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + # send a request that will satisfy transcoding + request_init = { + "parent": "projects/sample1/locations/sample2/cloudExadataInfrastructures/sample3" + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = oracledatabase.ListDbServersResponse( + next_page_token="next_page_token_value", + ) + + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = oracledatabase.ListDbServersResponse.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.list_db_servers(request) + + # Establish that the response is the type that we expect. + assert isinstance(response, pagers.ListDbServersPager) + assert response.next_page_token == "next_page_token_value" + + +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_list_db_servers_rest_interceptors(null_interceptor): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.OracleDatabaseRestInterceptor(), + ) + client = OracleDatabaseClient(transport=transport) + + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "post_list_db_servers" + ) as post, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_list_db_servers_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "pre_list_db_servers" + ) as pre, + ): + pre.assert_not_called() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = oracledatabase.ListDbServersRequest.pb( + oracledatabase.ListDbServersRequest() + ) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } + + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = oracledatabase.ListDbServersResponse.to_json( + oracledatabase.ListDbServersResponse() + ) + req.return_value.content = return_value + + request = oracledatabase.ListDbServersRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + post.return_value = oracledatabase.ListDbServersResponse() + post_with_metadata.return_value = ( + oracledatabase.ListDbServersResponse(), + metadata, + ) + + client.list_db_servers( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + + pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() + + +def test_list_db_nodes_rest_bad_request(request_type=oracledatabase.ListDbNodesRequest): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = { + "parent": "projects/sample1/locations/sample2/cloudVmClusters/sample3" + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.list_db_nodes(request) + + +@pytest.mark.parametrize( + "request_type", + [ + oracledatabase.ListDbNodesRequest, + dict, + ], +) +def test_list_db_nodes_rest_call_success(request_type): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + # send a request that will satisfy transcoding + request_init = { + "parent": "projects/sample1/locations/sample2/cloudVmClusters/sample3" + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = oracledatabase.ListDbNodesResponse( + next_page_token="next_page_token_value", + ) + + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = oracledatabase.ListDbNodesResponse.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.list_db_nodes(request) + + # Establish that the response is the type that we expect. + assert isinstance(response, pagers.ListDbNodesPager) + assert response.next_page_token == "next_page_token_value" + + +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_list_db_nodes_rest_interceptors(null_interceptor): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.OracleDatabaseRestInterceptor(), + ) + client = OracleDatabaseClient(transport=transport) + + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "post_list_db_nodes" + ) as post, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "post_list_db_nodes_with_metadata" + ) as post_with_metadata, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "pre_list_db_nodes" + ) as pre, + ): + pre.assert_not_called() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = oracledatabase.ListDbNodesRequest.pb( + oracledatabase.ListDbNodesRequest() + ) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } + + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = oracledatabase.ListDbNodesResponse.to_json( + oracledatabase.ListDbNodesResponse() + ) + req.return_value.content = return_value + + request = oracledatabase.ListDbNodesRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + post.return_value = oracledatabase.ListDbNodesResponse() + post_with_metadata.return_value = oracledatabase.ListDbNodesResponse(), metadata + + client.list_db_nodes( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + + pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() + + +def test_list_gi_versions_rest_bad_request( + request_type=oracledatabase.ListGiVersionsRequest, +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = {"parent": "projects/sample1/locations/sample2"} + request = request_type(**request_init) + + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.list_gi_versions(request) + + +@pytest.mark.parametrize( + "request_type", + [ + oracledatabase.ListGiVersionsRequest, + dict, + ], +) +def test_list_gi_versions_rest_call_success(request_type): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + # send a request that will satisfy transcoding + request_init = {"parent": "projects/sample1/locations/sample2"} + request = request_type(**request_init) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = oracledatabase.ListGiVersionsResponse( + next_page_token="next_page_token_value", + ) + + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = oracledatabase.ListGiVersionsResponse.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.list_gi_versions(request) + + # Establish that the response is the type that we expect. + assert isinstance(response, pagers.ListGiVersionsPager) + assert response.next_page_token == "next_page_token_value" + + +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_list_gi_versions_rest_interceptors(null_interceptor): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.OracleDatabaseRestInterceptor(), + ) + client = OracleDatabaseClient(transport=transport) + + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "post_list_gi_versions" + ) as post, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_list_gi_versions_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "pre_list_gi_versions" + ) as pre, + ): + pre.assert_not_called() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = oracledatabase.ListGiVersionsRequest.pb( + oracledatabase.ListGiVersionsRequest() + ) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } + + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = oracledatabase.ListGiVersionsResponse.to_json( + oracledatabase.ListGiVersionsResponse() + ) + req.return_value.content = return_value + + request = oracledatabase.ListGiVersionsRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + post.return_value = oracledatabase.ListGiVersionsResponse() + post_with_metadata.return_value = ( + oracledatabase.ListGiVersionsResponse(), + metadata, + ) + + client.list_gi_versions( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + + pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() + + +def test_list_minor_versions_rest_bad_request( + request_type=minor_version.ListMinorVersionsRequest, +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = {"parent": "projects/sample1/locations/sample2/giVersions/sample3"} + request = request_type(**request_init) + + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.list_minor_versions(request) + + +@pytest.mark.parametrize( + "request_type", + [ + minor_version.ListMinorVersionsRequest, + dict, + ], +) +def test_list_minor_versions_rest_call_success(request_type): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + # send a request that will satisfy transcoding + request_init = {"parent": "projects/sample1/locations/sample2/giVersions/sample3"} + request = request_type(**request_init) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = minor_version.ListMinorVersionsResponse( + next_page_token="next_page_token_value", + ) + + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = minor_version.ListMinorVersionsResponse.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.list_minor_versions(request) + + # Establish that the response is the type that we expect. + assert isinstance(response, pagers.ListMinorVersionsPager) + assert response.next_page_token == "next_page_token_value" + + +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_list_minor_versions_rest_interceptors(null_interceptor): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.OracleDatabaseRestInterceptor(), + ) + client = OracleDatabaseClient(transport=transport) + + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "post_list_minor_versions" + ) as post, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_list_minor_versions_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "pre_list_minor_versions" + ) as pre, + ): + pre.assert_not_called() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = minor_version.ListMinorVersionsRequest.pb( + minor_version.ListMinorVersionsRequest() + ) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } + + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = minor_version.ListMinorVersionsResponse.to_json( + minor_version.ListMinorVersionsResponse() + ) + req.return_value.content = return_value + + request = minor_version.ListMinorVersionsRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + post.return_value = minor_version.ListMinorVersionsResponse() + post_with_metadata.return_value = ( + minor_version.ListMinorVersionsResponse(), + metadata, + ) + + client.list_minor_versions( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + + pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() + + +def test_list_db_system_shapes_rest_bad_request( + request_type=oracledatabase.ListDbSystemShapesRequest, +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = {"parent": "projects/sample1/locations/sample2"} + request = request_type(**request_init) + + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.list_db_system_shapes(request) + + +@pytest.mark.parametrize( + "request_type", + [ + oracledatabase.ListDbSystemShapesRequest, + dict, + ], +) +def test_list_db_system_shapes_rest_call_success(request_type): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + # send a request that will satisfy transcoding + request_init = {"parent": "projects/sample1/locations/sample2"} + request = request_type(**request_init) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = oracledatabase.ListDbSystemShapesResponse( + next_page_token="next_page_token_value", + ) + + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = oracledatabase.ListDbSystemShapesResponse.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.list_db_system_shapes(request) + + # Establish that the response is the type that we expect. + assert isinstance(response, pagers.ListDbSystemShapesPager) + assert response.next_page_token == "next_page_token_value" + + +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_list_db_system_shapes_rest_interceptors(null_interceptor): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.OracleDatabaseRestInterceptor(), + ) + client = OracleDatabaseClient(transport=transport) + + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "post_list_db_system_shapes" + ) as post, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_list_db_system_shapes_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "pre_list_db_system_shapes" + ) as pre, + ): + pre.assert_not_called() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = oracledatabase.ListDbSystemShapesRequest.pb( + oracledatabase.ListDbSystemShapesRequest() + ) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } + + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = oracledatabase.ListDbSystemShapesResponse.to_json( + oracledatabase.ListDbSystemShapesResponse() + ) + req.return_value.content = return_value + + request = oracledatabase.ListDbSystemShapesRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + post.return_value = oracledatabase.ListDbSystemShapesResponse() + post_with_metadata.return_value = ( + oracledatabase.ListDbSystemShapesResponse(), + metadata, + ) + + client.list_db_system_shapes( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + + pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() + + +def test_list_autonomous_databases_rest_bad_request( + request_type=oracledatabase.ListAutonomousDatabasesRequest, +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = {"parent": "projects/sample1/locations/sample2"} + request = request_type(**request_init) + + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.list_autonomous_databases(request) + + +@pytest.mark.parametrize( + "request_type", + [ + oracledatabase.ListAutonomousDatabasesRequest, + dict, + ], +) +def test_list_autonomous_databases_rest_call_success(request_type): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + # send a request that will satisfy transcoding + request_init = {"parent": "projects/sample1/locations/sample2"} + request = request_type(**request_init) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = oracledatabase.ListAutonomousDatabasesResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) + + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = oracledatabase.ListAutonomousDatabasesResponse.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.list_autonomous_databases(request) + + # Establish that the response is the type that we expect. + assert isinstance(response, pagers.ListAutonomousDatabasesPager) + assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] + + +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_list_autonomous_databases_rest_interceptors(null_interceptor): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.OracleDatabaseRestInterceptor(), + ) + client = OracleDatabaseClient(transport=transport) + + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "post_list_autonomous_databases" + ) as post, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_list_autonomous_databases_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "pre_list_autonomous_databases" + ) as pre, + ): + pre.assert_not_called() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = oracledatabase.ListAutonomousDatabasesRequest.pb( + oracledatabase.ListAutonomousDatabasesRequest() + ) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } + + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = oracledatabase.ListAutonomousDatabasesResponse.to_json( + oracledatabase.ListAutonomousDatabasesResponse() + ) + req.return_value.content = return_value + + request = oracledatabase.ListAutonomousDatabasesRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + post.return_value = oracledatabase.ListAutonomousDatabasesResponse() + post_with_metadata.return_value = ( + oracledatabase.ListAutonomousDatabasesResponse(), + metadata, + ) + + client.list_autonomous_databases( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + + pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() + + +def test_get_autonomous_database_rest_bad_request( + request_type=oracledatabase.GetAutonomousDatabaseRequest, +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.get_autonomous_database(request) + + +@pytest.mark.parametrize( + "request_type", + [ + oracledatabase.GetAutonomousDatabaseRequest, + dict, + ], +) +def test_get_autonomous_database_rest_call_success(request_type): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = autonomous_database.AutonomousDatabase( + name="name_value", + database="database_value", + display_name="display_name_value", + entitlement_id="entitlement_id_value", + admin_password="admin_password_value", + admin_password_secret_version="admin_password_secret_version_value", + network="network_value", + cidr="cidr_value", + odb_network="odb_network_value", + odb_subnet="odb_subnet_value", + peer_autonomous_databases=["peer_autonomous_databases_value"], + disaster_recovery_supported_locations=[ + "disaster_recovery_supported_locations_value" + ], + ) + + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = autonomous_database.AutonomousDatabase.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.get_autonomous_database(request) + + # Establish that the response is the type that we expect. + assert isinstance(response, autonomous_database.AutonomousDatabase) + assert response.name == "name_value" + assert response.database == "database_value" + assert response.display_name == "display_name_value" + assert response.entitlement_id == "entitlement_id_value" + assert response.admin_password == "admin_password_value" + assert ( + response.admin_password_secret_version == "admin_password_secret_version_value" + ) + assert response.network == "network_value" + assert response.cidr == "cidr_value" + assert response.odb_network == "odb_network_value" + assert response.odb_subnet == "odb_subnet_value" + assert response.peer_autonomous_databases == ["peer_autonomous_databases_value"] + assert response.disaster_recovery_supported_locations == [ + "disaster_recovery_supported_locations_value" + ] + + +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_get_autonomous_database_rest_interceptors(null_interceptor): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.OracleDatabaseRestInterceptor(), + ) + client = OracleDatabaseClient(transport=transport) + + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "post_get_autonomous_database" + ) as post, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_get_autonomous_database_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "pre_get_autonomous_database" + ) as pre, + ): + pre.assert_not_called() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = oracledatabase.GetAutonomousDatabaseRequest.pb( + oracledatabase.GetAutonomousDatabaseRequest() + ) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } + + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = autonomous_database.AutonomousDatabase.to_json( + autonomous_database.AutonomousDatabase() + ) + req.return_value.content = return_value + + request = oracledatabase.GetAutonomousDatabaseRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + post.return_value = autonomous_database.AutonomousDatabase() + post_with_metadata.return_value = ( + autonomous_database.AutonomousDatabase(), + metadata, + ) + + client.get_autonomous_database( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + + pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() + + +def test_create_autonomous_database_rest_bad_request( + request_type=oracledatabase.CreateAutonomousDatabaseRequest, +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = {"parent": "projects/sample1/locations/sample2"} + request = request_type(**request_init) + + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.create_autonomous_database(request) + + +@pytest.mark.parametrize( + "request_type", + [ + oracledatabase.CreateAutonomousDatabaseRequest, + dict, + ], +) +def test_create_autonomous_database_rest_call_success(request_type): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + # send a request that will satisfy transcoding + request_init = {"parent": "projects/sample1/locations/sample2"} + request_init["autonomous_database"] = { + "name": "name_value", + "database": "database_value", + "display_name": "display_name_value", + "entitlement_id": "entitlement_id_value", + "admin_password": "admin_password_value", + "admin_password_secret_version": "admin_password_secret_version_value", + "properties": { + "ocid": "ocid_value", + "compute_count": 0.1413, + "cpu_core_count": 1496, + "data_storage_size_tb": 2109, + "data_storage_size_gb": 2096, + "db_workload": 1, + "db_edition": 1, + "character_set": "character_set_value", + "n_character_set": "n_character_set_value", + "private_endpoint_ip": "private_endpoint_ip_value", + "private_endpoint_label": "private_endpoint_label_value", + "db_version": "db_version_value", + "is_auto_scaling_enabled": True, + "is_storage_auto_scaling_enabled": True, + "license_type": 1, + "customer_contacts": [{"email": "email_value"}], + "secret_id": "secret_id_value", + "vault_id": "vault_id_value", + "maintenance_schedule_type": 1, + "mtls_connection_required": True, + "backup_retention_period_days": 2975, + "actual_used_data_storage_size_tb": 0.3366, + "allocated_storage_size_tb": 0.2636, + "apex_details": { + "apex_version": "apex_version_value", + "ords_version": "ords_version_value", + }, + "are_primary_allowlisted_ips_used": True, + "lifecycle_details": "lifecycle_details_value", + "state": 1, + "autonomous_container_database_id": "autonomous_container_database_id_value", + "available_upgrade_versions": [ + "available_upgrade_versions_value1", + "available_upgrade_versions_value2", + ], + "connection_strings": { + "all_connection_strings": { + "high": "high_value", + "low": "low_value", + "medium": "medium_value", + }, + "dedicated": "dedicated_value", + "high": "high_value", + "low": "low_value", + "medium": "medium_value", + "profiles": [ + { + "consumer_group": 1, + "display_name": "display_name_value", + "host_format": 1, + "is_regional": True, + "protocol": 1, + "session_mode": 1, + "syntax_format": 1, + "tls_authentication": 1, + "value": "value_value", + } + ], + }, + "connection_urls": { + "apex_uri": "apex_uri_value", + "database_transforms_uri": "database_transforms_uri_value", + "graph_studio_uri": "graph_studio_uri_value", + "machine_learning_notebook_uri": "machine_learning_notebook_uri_value", + "machine_learning_user_management_uri": "machine_learning_user_management_uri_value", + "mongo_db_uri": "mongo_db_uri_value", + "ords_uri": "ords_uri_value", + "sql_dev_web_uri": "sql_dev_web_uri_value", + }, + "failed_data_recovery_duration": {"seconds": 751, "nanos": 543}, + "memory_table_gbs": 1691, + "is_local_data_guard_enabled": True, + "local_adg_auto_failover_max_data_loss_limit": 4513, + "local_standby_db": { + "lag_time_duration": {}, + "lifecycle_details": "lifecycle_details_value", + "state": 1, + "data_guard_role_changed_time": {"seconds": 751, "nanos": 543}, + "disaster_recovery_role_changed_time": {}, + }, + "memory_per_oracle_compute_unit_gbs": 3626, + "local_disaster_recovery_type": 1, + "data_safe_state": 1, + "database_management_state": 1, + "open_mode": 1, + "operations_insights_state": 1, + "peer_db_ids": ["peer_db_ids_value1", "peer_db_ids_value2"], + "permission_level": 1, + "private_endpoint": "private_endpoint_value", + "refreshable_mode": 1, + "refreshable_state": 1, + "role": 1, + "scheduled_operation_details": [ + { + "day_of_week": 1, + "start_time": { + "hours": 561, + "minutes": 773, + "seconds": 751, + "nanos": 543, + }, + "stop_time": {}, + } + ], + "sql_web_developer_url": "sql_web_developer_url_value", + "supported_clone_regions": [ + "supported_clone_regions_value1", + "supported_clone_regions_value2", + ], + "used_data_storage_size_tbs": 2752, + "oci_url": "oci_url_value", + "total_auto_backup_storage_size_gbs": 0.36100000000000004, + "next_long_term_backup_time": {}, + "data_guard_role_changed_time": {}, + "disaster_recovery_role_changed_time": {}, + "maintenance_begin_time": {}, + "maintenance_end_time": {}, + "allowlisted_ips": ["allowlisted_ips_value1", "allowlisted_ips_value2"], + "encryption_key": {"provider": 1, "kms_key": "kms_key_value"}, + "encryption_key_history_entries": [ + {"encryption_key": {}, "activation_time": {}} + ], + "service_agent_email": "service_agent_email_value", + "local_data_guard_enabled": True, + "local_adg_auto_failover_max_data_loss_limit_duration": 5478, + }, + "labels": {}, + "network": "network_value", + "cidr": "cidr_value", + "odb_network": "odb_network_value", + "odb_subnet": "odb_subnet_value", + "source_config": { + "autonomous_database": "autonomous_database_value", + "automatic_backups_replication_enabled": True, + }, + "peer_autonomous_databases": [ + "peer_autonomous_databases_value1", + "peer_autonomous_databases_value2", + ], + "create_time": {}, + "disaster_recovery_supported_locations": [ + "disaster_recovery_supported_locations_value1", + "disaster_recovery_supported_locations_value2", + ], + } + # The version of a generated dependency at test runtime may differ from the version used during generation. + # Delete any fields which are not present in the current runtime dependency + # See https://github.com/googleapis/gapic-generator-python/issues/1748 + + # Determine if the message type is proto-plus or protobuf + test_field = oracledatabase.CreateAutonomousDatabaseRequest.meta.fields[ + "autonomous_database" + ] + + def get_message_fields(field): + # Given a field which is a message (composite type), return a list with + # all the fields of the message. + # If the field is not a composite type, return an empty list. + message_fields = [] + + if hasattr(field, "message") and field.message: + is_field_type_proto_plus_type = not hasattr(field.message, "DESCRIPTOR") + + if is_field_type_proto_plus_type: + message_fields = field.message.meta.fields.values() + # Add `# pragma: NO COVER` because there may not be any `*_pb2` field types + else: # pragma: NO COVER + message_fields = field.message.DESCRIPTOR.fields + return message_fields + + runtime_nested_fields = [ + (field.name, nested_field.name) + for field in get_message_fields(test_field) + for nested_field in get_message_fields(field) + ] + + subfields_not_in_runtime = [] + + # For each item in the sample request, create a list of sub fields which are not present at runtime + # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime + for field, value in request_init["autonomous_database"].items(): # pragma: NO COVER + result = None + is_repeated = False + # For repeated fields + if isinstance(value, list) and len(value): + is_repeated = True + result = value[0] + # For fields where the type is another message + if isinstance(value, dict): + result = value + + if result and hasattr(result, "keys"): + for subfield in result.keys(): + if (field, subfield) not in runtime_nested_fields: + subfields_not_in_runtime.append( + { + "field": field, + "subfield": subfield, + "is_repeated": is_repeated, + } + ) + + # Remove fields from the sample request which are not present in the runtime version of the dependency + # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime + for subfield_to_delete in subfields_not_in_runtime: # pragma: NO COVER + field = subfield_to_delete.get("field") + field_repeated = subfield_to_delete.get("is_repeated") + subfield = subfield_to_delete.get("subfield") + if subfield: + if field_repeated: + for i in range(0, len(request_init["autonomous_database"][field])): + del request_init["autonomous_database"][field][i][subfield] + else: + del request_init["autonomous_database"][field][subfield] + request = request_type(**request_init) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.create_autonomous_database(request) + + # Establish that the response is the type that we expect. + json_return_value = json_format.MessageToJson(return_value) + + +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_create_autonomous_database_rest_interceptors(null_interceptor): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.OracleDatabaseRestInterceptor(), + ) + client = OracleDatabaseClient(transport=transport) + + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object(operation.Operation, "_set_result_from_operation"), + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "post_create_autonomous_database" + ) as post, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_create_autonomous_database_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "pre_create_autonomous_database" + ) as pre, + ): + pre.assert_not_called() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = oracledatabase.CreateAutonomousDatabaseRequest.pb( + oracledatabase.CreateAutonomousDatabaseRequest() + ) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } + + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = json_format.MessageToJson(operations_pb2.Operation()) + req.return_value.content = return_value + + request = oracledatabase.CreateAutonomousDatabaseRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + post.return_value = operations_pb2.Operation() + post_with_metadata.return_value = operations_pb2.Operation(), metadata + + client.create_autonomous_database( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + + pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() + + +def test_update_autonomous_database_rest_bad_request( + request_type=oracledatabase.UpdateAutonomousDatabaseRequest, +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = { + "autonomous_database": { + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + } + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.update_autonomous_database(request) + + +@pytest.mark.parametrize( + "request_type", + [ + oracledatabase.UpdateAutonomousDatabaseRequest, + dict, + ], +) +def test_update_autonomous_database_rest_call_success(request_type): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + # send a request that will satisfy transcoding + request_init = { + "autonomous_database": { + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + } + } + request_init["autonomous_database"] = { + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3", + "database": "database_value", + "display_name": "display_name_value", + "entitlement_id": "entitlement_id_value", + "admin_password": "admin_password_value", + "admin_password_secret_version": "admin_password_secret_version_value", + "properties": { + "ocid": "ocid_value", + "compute_count": 0.1413, + "cpu_core_count": 1496, + "data_storage_size_tb": 2109, + "data_storage_size_gb": 2096, + "db_workload": 1, + "db_edition": 1, + "character_set": "character_set_value", + "n_character_set": "n_character_set_value", + "private_endpoint_ip": "private_endpoint_ip_value", + "private_endpoint_label": "private_endpoint_label_value", + "db_version": "db_version_value", + "is_auto_scaling_enabled": True, + "is_storage_auto_scaling_enabled": True, + "license_type": 1, + "customer_contacts": [{"email": "email_value"}], + "secret_id": "secret_id_value", + "vault_id": "vault_id_value", + "maintenance_schedule_type": 1, + "mtls_connection_required": True, + "backup_retention_period_days": 2975, + "actual_used_data_storage_size_tb": 0.3366, + "allocated_storage_size_tb": 0.2636, + "apex_details": { + "apex_version": "apex_version_value", + "ords_version": "ords_version_value", + }, + "are_primary_allowlisted_ips_used": True, + "lifecycle_details": "lifecycle_details_value", + "state": 1, + "autonomous_container_database_id": "autonomous_container_database_id_value", + "available_upgrade_versions": [ + "available_upgrade_versions_value1", + "available_upgrade_versions_value2", + ], + "connection_strings": { + "all_connection_strings": { + "high": "high_value", + "low": "low_value", + "medium": "medium_value", + }, + "dedicated": "dedicated_value", + "high": "high_value", + "low": "low_value", + "medium": "medium_value", + "profiles": [ + { + "consumer_group": 1, + "display_name": "display_name_value", + "host_format": 1, + "is_regional": True, + "protocol": 1, + "session_mode": 1, + "syntax_format": 1, + "tls_authentication": 1, + "value": "value_value", + } + ], + }, + "connection_urls": { + "apex_uri": "apex_uri_value", + "database_transforms_uri": "database_transforms_uri_value", + "graph_studio_uri": "graph_studio_uri_value", + "machine_learning_notebook_uri": "machine_learning_notebook_uri_value", + "machine_learning_user_management_uri": "machine_learning_user_management_uri_value", + "mongo_db_uri": "mongo_db_uri_value", + "ords_uri": "ords_uri_value", + "sql_dev_web_uri": "sql_dev_web_uri_value", + }, + "failed_data_recovery_duration": {"seconds": 751, "nanos": 543}, + "memory_table_gbs": 1691, + "is_local_data_guard_enabled": True, + "local_adg_auto_failover_max_data_loss_limit": 4513, + "local_standby_db": { + "lag_time_duration": {}, + "lifecycle_details": "lifecycle_details_value", + "state": 1, + "data_guard_role_changed_time": {"seconds": 751, "nanos": 543}, + "disaster_recovery_role_changed_time": {}, + }, + "memory_per_oracle_compute_unit_gbs": 3626, + "local_disaster_recovery_type": 1, + "data_safe_state": 1, + "database_management_state": 1, + "open_mode": 1, + "operations_insights_state": 1, + "peer_db_ids": ["peer_db_ids_value1", "peer_db_ids_value2"], + "permission_level": 1, + "private_endpoint": "private_endpoint_value", + "refreshable_mode": 1, + "refreshable_state": 1, + "role": 1, + "scheduled_operation_details": [ + { + "day_of_week": 1, + "start_time": { + "hours": 561, + "minutes": 773, + "seconds": 751, + "nanos": 543, + }, + "stop_time": {}, + } + ], + "sql_web_developer_url": "sql_web_developer_url_value", + "supported_clone_regions": [ + "supported_clone_regions_value1", + "supported_clone_regions_value2", + ], + "used_data_storage_size_tbs": 2752, + "oci_url": "oci_url_value", + "total_auto_backup_storage_size_gbs": 0.36100000000000004, + "next_long_term_backup_time": {}, + "data_guard_role_changed_time": {}, + "disaster_recovery_role_changed_time": {}, + "maintenance_begin_time": {}, + "maintenance_end_time": {}, + "allowlisted_ips": ["allowlisted_ips_value1", "allowlisted_ips_value2"], + "encryption_key": {"provider": 1, "kms_key": "kms_key_value"}, + "encryption_key_history_entries": [ + {"encryption_key": {}, "activation_time": {}} + ], + "service_agent_email": "service_agent_email_value", + "local_data_guard_enabled": True, + "local_adg_auto_failover_max_data_loss_limit_duration": 5478, + }, + "labels": {}, + "network": "network_value", + "cidr": "cidr_value", + "odb_network": "odb_network_value", + "odb_subnet": "odb_subnet_value", + "source_config": { + "autonomous_database": "autonomous_database_value", + "automatic_backups_replication_enabled": True, + }, + "peer_autonomous_databases": [ + "peer_autonomous_databases_value1", + "peer_autonomous_databases_value2", + ], + "create_time": {}, + "disaster_recovery_supported_locations": [ + "disaster_recovery_supported_locations_value1", + "disaster_recovery_supported_locations_value2", + ], + } + # The version of a generated dependency at test runtime may differ from the version used during generation. + # Delete any fields which are not present in the current runtime dependency + # See https://github.com/googleapis/gapic-generator-python/issues/1748 + + # Determine if the message type is proto-plus or protobuf + test_field = oracledatabase.UpdateAutonomousDatabaseRequest.meta.fields[ + "autonomous_database" + ] + + def get_message_fields(field): + # Given a field which is a message (composite type), return a list with + # all the fields of the message. + # If the field is not a composite type, return an empty list. + message_fields = [] + + if hasattr(field, "message") and field.message: + is_field_type_proto_plus_type = not hasattr(field.message, "DESCRIPTOR") + + if is_field_type_proto_plus_type: + message_fields = field.message.meta.fields.values() + # Add `# pragma: NO COVER` because there may not be any `*_pb2` field types + else: # pragma: NO COVER + message_fields = field.message.DESCRIPTOR.fields + return message_fields + + runtime_nested_fields = [ + (field.name, nested_field.name) + for field in get_message_fields(test_field) + for nested_field in get_message_fields(field) + ] + + subfields_not_in_runtime = [] + + # For each item in the sample request, create a list of sub fields which are not present at runtime + # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime + for field, value in request_init["autonomous_database"].items(): # pragma: NO COVER + result = None + is_repeated = False + # For repeated fields + if isinstance(value, list) and len(value): + is_repeated = True + result = value[0] + # For fields where the type is another message + if isinstance(value, dict): + result = value + + if result and hasattr(result, "keys"): + for subfield in result.keys(): + if (field, subfield) not in runtime_nested_fields: + subfields_not_in_runtime.append( + { + "field": field, + "subfield": subfield, + "is_repeated": is_repeated, + } + ) + + # Remove fields from the sample request which are not present in the runtime version of the dependency + # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime + for subfield_to_delete in subfields_not_in_runtime: # pragma: NO COVER + field = subfield_to_delete.get("field") + field_repeated = subfield_to_delete.get("is_repeated") + subfield = subfield_to_delete.get("subfield") + if subfield: + if field_repeated: + for i in range(0, len(request_init["autonomous_database"][field])): + del request_init["autonomous_database"][field][i][subfield] + else: + del request_init["autonomous_database"][field][subfield] + request = request_type(**request_init) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.update_autonomous_database(request) + + # Establish that the response is the type that we expect. + json_return_value = json_format.MessageToJson(return_value) + + +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_update_autonomous_database_rest_interceptors(null_interceptor): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.OracleDatabaseRestInterceptor(), + ) + client = OracleDatabaseClient(transport=transport) + + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object(operation.Operation, "_set_result_from_operation"), + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "post_update_autonomous_database" + ) as post, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_update_autonomous_database_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "pre_update_autonomous_database" + ) as pre, + ): + pre.assert_not_called() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = oracledatabase.UpdateAutonomousDatabaseRequest.pb( + oracledatabase.UpdateAutonomousDatabaseRequest() + ) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } + + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = json_format.MessageToJson(operations_pb2.Operation()) + req.return_value.content = return_value + + request = oracledatabase.UpdateAutonomousDatabaseRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + post.return_value = operations_pb2.Operation() + post_with_metadata.return_value = operations_pb2.Operation(), metadata + + client.update_autonomous_database( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + + pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() + + +def test_delete_autonomous_database_rest_bad_request( + request_type=oracledatabase.DeleteAutonomousDatabaseRequest, +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.delete_autonomous_database(request) + + +@pytest.mark.parametrize( + "request_type", + [ + oracledatabase.DeleteAutonomousDatabaseRequest, + dict, + ], +) +def test_delete_autonomous_database_rest_call_success(request_type): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.delete_autonomous_database(request) + + # Establish that the response is the type that we expect. + json_return_value = json_format.MessageToJson(return_value) + + +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_delete_autonomous_database_rest_interceptors(null_interceptor): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.OracleDatabaseRestInterceptor(), + ) + client = OracleDatabaseClient(transport=transport) + + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object(operation.Operation, "_set_result_from_operation"), + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "post_delete_autonomous_database" + ) as post, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_delete_autonomous_database_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "pre_delete_autonomous_database" + ) as pre, + ): + pre.assert_not_called() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = oracledatabase.DeleteAutonomousDatabaseRequest.pb( + oracledatabase.DeleteAutonomousDatabaseRequest() + ) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } + + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = json_format.MessageToJson(operations_pb2.Operation()) + req.return_value.content = return_value + + request = oracledatabase.DeleteAutonomousDatabaseRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + post.return_value = operations_pb2.Operation() + post_with_metadata.return_value = operations_pb2.Operation(), metadata + + client.delete_autonomous_database( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + + pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() + + +def test_restore_autonomous_database_rest_bad_request( + request_type=oracledatabase.RestoreAutonomousDatabaseRequest, +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.restore_autonomous_database(request) + + +@pytest.mark.parametrize( + "request_type", + [ + oracledatabase.RestoreAutonomousDatabaseRequest, + dict, + ], +) +def test_restore_autonomous_database_rest_call_success(request_type): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.restore_autonomous_database(request) + + # Establish that the response is the type that we expect. + json_return_value = json_format.MessageToJson(return_value) + + +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_restore_autonomous_database_rest_interceptors(null_interceptor): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.OracleDatabaseRestInterceptor(), + ) + client = OracleDatabaseClient(transport=transport) + + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object(operation.Operation, "_set_result_from_operation"), + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "post_restore_autonomous_database" + ) as post, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_restore_autonomous_database_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "pre_restore_autonomous_database" + ) as pre, + ): + pre.assert_not_called() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = oracledatabase.RestoreAutonomousDatabaseRequest.pb( + oracledatabase.RestoreAutonomousDatabaseRequest() + ) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } + + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = json_format.MessageToJson(operations_pb2.Operation()) + req.return_value.content = return_value + + request = oracledatabase.RestoreAutonomousDatabaseRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + post.return_value = operations_pb2.Operation() + post_with_metadata.return_value = operations_pb2.Operation(), metadata + + client.restore_autonomous_database( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + + pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() + + +def test_generate_autonomous_database_wallet_rest_bad_request( + request_type=oracledatabase.GenerateAutonomousDatabaseWalletRequest, +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.generate_autonomous_database_wallet(request) + + +@pytest.mark.parametrize( + "request_type", + [ + oracledatabase.GenerateAutonomousDatabaseWalletRequest, + dict, + ], +) +def test_generate_autonomous_database_wallet_rest_call_success(request_type): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = oracledatabase.GenerateAutonomousDatabaseWalletResponse( + archive_content=b"archive_content_blob", + ) + + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = oracledatabase.GenerateAutonomousDatabaseWalletResponse.pb( + return_value + ) + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.generate_autonomous_database_wallet(request) + + # Establish that the response is the type that we expect. + assert isinstance(response, oracledatabase.GenerateAutonomousDatabaseWalletResponse) + assert response.archive_content == b"archive_content_blob" + + +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_generate_autonomous_database_wallet_rest_interceptors(null_interceptor): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.OracleDatabaseRestInterceptor(), + ) + client = OracleDatabaseClient(transport=transport) + + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_generate_autonomous_database_wallet", + ) as post, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_generate_autonomous_database_wallet_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "pre_generate_autonomous_database_wallet", + ) as pre, + ): + pre.assert_not_called() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = oracledatabase.GenerateAutonomousDatabaseWalletRequest.pb( + oracledatabase.GenerateAutonomousDatabaseWalletRequest() + ) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } + + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = oracledatabase.GenerateAutonomousDatabaseWalletResponse.to_json( + oracledatabase.GenerateAutonomousDatabaseWalletResponse() + ) + req.return_value.content = return_value + + request = oracledatabase.GenerateAutonomousDatabaseWalletRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + post.return_value = oracledatabase.GenerateAutonomousDatabaseWalletResponse() + post_with_metadata.return_value = ( + oracledatabase.GenerateAutonomousDatabaseWalletResponse(), + metadata, + ) + + client.generate_autonomous_database_wallet( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + + pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() + + +def test_list_autonomous_db_versions_rest_bad_request( + request_type=oracledatabase.ListAutonomousDbVersionsRequest, +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) + # send a request that will satisfy transcoding + request_init = {"parent": "projects/sample1/locations/sample2"} + request = request_type(**request_init) - # Mock the actual call, and fake the request. - with mock.patch.object(type(client.transport.delete_db_system), "__call__") as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - operations_pb2.Operation(name="operations/spam") - ) - await client.delete_db_system(request=None) - - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = db_system.DeleteDbSystemRequest() - assert args[0] == request_msg + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.list_autonomous_db_versions(request) -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_list_db_versions_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", +@pytest.mark.parametrize( + "request_type", + [ + oracledatabase.ListAutonomousDbVersionsRequest, + dict, + ], +) +def test_list_autonomous_db_versions_rest_call_success(request_type): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) - # Mock the actual call, and fake the request. - with mock.patch.object(type(client.transport.list_db_versions), "__call__") as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - db_version.ListDbVersionsResponse( - next_page_token="next_page_token_value", - ) + # send a request that will satisfy transcoding + request_init = {"parent": "projects/sample1/locations/sample2"} + request = request_type(**request_init) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = oracledatabase.ListAutonomousDbVersionsResponse( + next_page_token="next_page_token_value", ) - await client.list_db_versions(request=None) - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = db_version.ListDbVersionsRequest() - assert args[0] == request_msg + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = oracledatabase.ListAutonomousDbVersionsResponse.pb(return_value) + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.list_autonomous_db_versions(request) + # Establish that the response is the type that we expect. + assert isinstance(response, pagers.ListAutonomousDbVersionsPager) + assert response.next_page_token == "next_page_token_value" -# This test is a coverage failsafe to make sure that totally empty calls, -# i.e. request == None and no flattened fields passed, work. -@pytest.mark.asyncio -async def test_list_database_character_sets_empty_call_grpc_asyncio(): - client = OracleDatabaseAsyncClient( - credentials=async_anonymous_credentials(), - transport="grpc_asyncio", + +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_list_autonomous_db_versions_rest_interceptors(null_interceptor): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.OracleDatabaseRestInterceptor(), ) + client = OracleDatabaseClient(transport=transport) - # Mock the actual call, and fake the request. - with mock.patch.object( - type(client.transport.list_database_character_sets), "__call__" - ) as call: - # Designate an appropriate return value for the call. - call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( - database_character_set.ListDatabaseCharacterSetsResponse( - next_page_token="next_page_token_value", - ) + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "post_list_autonomous_db_versions" + ) as post, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_list_autonomous_db_versions_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "pre_list_autonomous_db_versions" + ) as pre, + ): + pre.assert_not_called() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = oracledatabase.ListAutonomousDbVersionsRequest.pb( + oracledatabase.ListAutonomousDbVersionsRequest() ) - await client.list_database_character_sets(request=None) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } - # Establish that the underlying stub method was called. - call.assert_called() - _, args, _ = call.mock_calls[0] - request_msg = database_character_set.ListDatabaseCharacterSetsRequest() - assert args[0] == request_msg + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = oracledatabase.ListAutonomousDbVersionsResponse.to_json( + oracledatabase.ListAutonomousDbVersionsResponse() + ) + req.return_value.content = return_value + request = oracledatabase.ListAutonomousDbVersionsRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + post.return_value = oracledatabase.ListAutonomousDbVersionsResponse() + post_with_metadata.return_value = ( + oracledatabase.ListAutonomousDbVersionsResponse(), + metadata, + ) -def test_transport_kind_rest(): - transport = OracleDatabaseClient.get_transport_class("rest")( - credentials=ga_credentials.AnonymousCredentials() - ) - assert transport.kind == "rest" + client.list_autonomous_db_versions( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() -def test_list_cloud_exadata_infrastructures_rest_bad_request( - request_type=oracledatabase.ListCloudExadataInfrastructuresRequest, + +def test_list_autonomous_database_character_sets_rest_bad_request( + request_type=oracledatabase.ListAutonomousDatabaseCharacterSetsRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" @@ -42212,17 +62208,17 @@ def test_list_cloud_exadata_infrastructures_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_cloud_exadata_infrastructures(request) + client.list_autonomous_database_character_sets(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.ListCloudExadataInfrastructuresRequest, + oracledatabase.ListAutonomousDatabaseCharacterSetsRequest, dict, ], ) -def test_list_cloud_exadata_infrastructures_rest_call_success(request_type): +def test_list_autonomous_database_character_sets_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) @@ -42234,7 +62230,7 @@ def test_list_cloud_exadata_infrastructures_rest_call_success(request_type): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListCloudExadataInfrastructuresResponse( + return_value = oracledatabase.ListAutonomousDatabaseCharacterSetsResponse( next_page_token="next_page_token_value", ) @@ -42243,22 +62239,22 @@ def test_list_cloud_exadata_infrastructures_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = oracledatabase.ListCloudExadataInfrastructuresResponse.pb( + return_value = oracledatabase.ListAutonomousDatabaseCharacterSetsResponse.pb( return_value ) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_cloud_exadata_infrastructures(request) + response = client.list_autonomous_database_character_sets(request) # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListCloudExadataInfrastructuresPager) + assert isinstance(response, pagers.ListAutonomousDatabaseCharacterSetsPager) assert response.next_page_token == "next_page_token_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_cloud_exadata_infrastructures_rest_interceptors(null_interceptor): +def test_list_autonomous_database_character_sets_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -42272,22 +62268,22 @@ def test_list_cloud_exadata_infrastructures_rest_interceptors(null_interceptor): mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_list_cloud_exadata_infrastructures", + "post_list_autonomous_database_character_sets", ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_list_cloud_exadata_infrastructures_with_metadata", + "post_list_autonomous_database_character_sets_with_metadata", ) as post_with_metadata, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "pre_list_cloud_exadata_infrastructures", + "pre_list_autonomous_database_character_sets", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.ListCloudExadataInfrastructuresRequest.pb( - oracledatabase.ListCloudExadataInfrastructuresRequest() + pb_message = oracledatabase.ListAutonomousDatabaseCharacterSetsRequest.pb( + oracledatabase.ListAutonomousDatabaseCharacterSetsRequest() ) transcode.return_value = { "method": "post", @@ -42299,24 +62295,26 @@ def test_list_cloud_exadata_infrastructures_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = oracledatabase.ListCloudExadataInfrastructuresResponse.to_json( - oracledatabase.ListCloudExadataInfrastructuresResponse() + return_value = ( + oracledatabase.ListAutonomousDatabaseCharacterSetsResponse.to_json( + oracledatabase.ListAutonomousDatabaseCharacterSetsResponse() + ) ) req.return_value.content = return_value - request = oracledatabase.ListCloudExadataInfrastructuresRequest() + request = oracledatabase.ListAutonomousDatabaseCharacterSetsRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = oracledatabase.ListCloudExadataInfrastructuresResponse() + post.return_value = oracledatabase.ListAutonomousDatabaseCharacterSetsResponse() post_with_metadata.return_value = ( - oracledatabase.ListCloudExadataInfrastructuresResponse(), + oracledatabase.ListAutonomousDatabaseCharacterSetsResponse(), metadata, ) - client.list_cloud_exadata_infrastructures( + client.list_autonomous_database_character_sets( request, metadata=[ ("key", "val"), @@ -42329,16 +62327,14 @@ def test_list_cloud_exadata_infrastructures_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_get_cloud_exadata_infrastructure_rest_bad_request( - request_type=oracledatabase.GetCloudExadataInfrastructureRequest, +def test_list_autonomous_database_backups_rest_bad_request( + request_type=oracledatabase.ListAutonomousDatabaseBackupsRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "name": "projects/sample1/locations/sample2/cloudExadataInfrastructures/sample3" - } + request_init = {"parent": "projects/sample1/locations/sample2"} request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -42354,35 +62350,30 @@ def test_get_cloud_exadata_infrastructure_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_cloud_exadata_infrastructure(request) + client.list_autonomous_database_backups(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.GetCloudExadataInfrastructureRequest, + oracledatabase.ListAutonomousDatabaseBackupsRequest, dict, ], ) -def test_get_cloud_exadata_infrastructure_rest_call_success(request_type): +def test_list_autonomous_database_backups_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "name": "projects/sample1/locations/sample2/cloudExadataInfrastructures/sample3" - } + request_init = {"parent": "projects/sample1/locations/sample2"} request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = exadata_infra.CloudExadataInfrastructure( - name="name_value", - display_name="display_name_value", - gcp_oracle_zone="gcp_oracle_zone_value", - entitlement_id="entitlement_id_value", + return_value = oracledatabase.ListAutonomousDatabaseBackupsResponse( + next_page_token="next_page_token_value", ) # Wrap the value into a proper Response obj @@ -42390,23 +62381,22 @@ def test_get_cloud_exadata_infrastructure_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = exadata_infra.CloudExadataInfrastructure.pb(return_value) + return_value = oracledatabase.ListAutonomousDatabaseBackupsResponse.pb( + return_value + ) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_cloud_exadata_infrastructure(request) + response = client.list_autonomous_database_backups(request) # Establish that the response is the type that we expect. - assert isinstance(response, exadata_infra.CloudExadataInfrastructure) - assert response.name == "name_value" - assert response.display_name == "display_name_value" - assert response.gcp_oracle_zone == "gcp_oracle_zone_value" - assert response.entitlement_id == "entitlement_id_value" + assert isinstance(response, pagers.ListAutonomousDatabaseBackupsPager) + assert response.next_page_token == "next_page_token_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_get_cloud_exadata_infrastructure_rest_interceptors(null_interceptor): +def test_list_autonomous_database_backups_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -42420,22 +62410,22 @@ def test_get_cloud_exadata_infrastructure_rest_interceptors(null_interceptor): mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_get_cloud_exadata_infrastructure", + "post_list_autonomous_database_backups", ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_get_cloud_exadata_infrastructure_with_metadata", + "post_list_autonomous_database_backups_with_metadata", ) as post_with_metadata, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "pre_get_cloud_exadata_infrastructure", + "pre_list_autonomous_database_backups", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.GetCloudExadataInfrastructureRequest.pb( - oracledatabase.GetCloudExadataInfrastructureRequest() + pb_message = oracledatabase.ListAutonomousDatabaseBackupsRequest.pb( + oracledatabase.ListAutonomousDatabaseBackupsRequest() ) transcode.return_value = { "method": "post", @@ -42447,24 +62437,24 @@ def test_get_cloud_exadata_infrastructure_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = exadata_infra.CloudExadataInfrastructure.to_json( - exadata_infra.CloudExadataInfrastructure() + return_value = oracledatabase.ListAutonomousDatabaseBackupsResponse.to_json( + oracledatabase.ListAutonomousDatabaseBackupsResponse() ) req.return_value.content = return_value - request = oracledatabase.GetCloudExadataInfrastructureRequest() + request = oracledatabase.ListAutonomousDatabaseBackupsRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = exadata_infra.CloudExadataInfrastructure() + post.return_value = oracledatabase.ListAutonomousDatabaseBackupsResponse() post_with_metadata.return_value = ( - exadata_infra.CloudExadataInfrastructure(), + oracledatabase.ListAutonomousDatabaseBackupsResponse(), metadata, ) - client.get_cloud_exadata_infrastructure( + client.list_autonomous_database_backups( request, metadata=[ ("key", "val"), @@ -42477,14 +62467,16 @@ def test_get_cloud_exadata_infrastructure_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_create_cloud_exadata_infrastructure_rest_bad_request( - request_type=oracledatabase.CreateCloudExadataInfrastructureRequest, +def test_stop_autonomous_database_rest_bad_request( + request_type=oracledatabase.StopAutonomousDatabaseRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2"} + request_init = { + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + } request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -42500,146 +62492,155 @@ def test_create_cloud_exadata_infrastructure_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.create_cloud_exadata_infrastructure(request) + client.stop_autonomous_database(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.CreateCloudExadataInfrastructureRequest, + oracledatabase.StopAutonomousDatabaseRequest, dict, ], ) -def test_create_cloud_exadata_infrastructure_rest_call_success(request_type): +def test_stop_autonomous_database_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2"} - request_init["cloud_exadata_infrastructure"] = { - "name": "name_value", - "display_name": "display_name_value", - "gcp_oracle_zone": "gcp_oracle_zone_value", - "entitlement_id": "entitlement_id_value", - "properties": { - "ocid": "ocid_value", - "compute_count": 1413, - "storage_count": 1405, - "total_storage_size_gb": 2234, - "available_storage_size_gb": 2615, - "maintenance_window": { - "preference": 1, - "months": [1], - "weeks_of_month": [1497, 1498], - "days_of_week": [1], - "hours_of_day": [1283, 1284], - "lead_time_week": 1455, - "patching_mode": 1, - "custom_action_timeout_mins": 2804, - "is_custom_action_timeout_enabled": True, - }, - "state": 1, - "shape": "shape_value", - "oci_url": "oci_url_value", - "cpu_count": 976, - "max_cpu_count": 1397, - "memory_size_gb": 1499, - "max_memory_gb": 1382, - "db_node_storage_size_gb": 2401, - "max_db_node_storage_size_gb": 2822, - "data_storage_size_tb": 0.2109, - "max_data_storage_tb": 0.19920000000000002, - "activated_storage_count": 2449, - "additional_storage_count": 2549, - "db_server_version": "db_server_version_value", - "storage_server_version": "storage_server_version_value", - "next_maintenance_run_id": "next_maintenance_run_id_value", - "next_maintenance_run_time": {"seconds": 751, "nanos": 543}, - "next_security_maintenance_run_time": {}, - "customer_contacts": [{"email": "email_value"}], - "monthly_storage_server_version": "monthly_storage_server_version_value", - "monthly_db_server_version": "monthly_db_server_version_value", - "compute_model": 1, - "database_server_type": "database_server_type_value", - "storage_server_type": "storage_server_type_value", - }, - "labels": {}, - "create_time": {}, + request_init = { + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" } - # The version of a generated dependency at test runtime may differ from the version used during generation. - # Delete any fields which are not present in the current runtime dependency - # See https://github.com/googleapis/gapic-generator-python/issues/1748 + request = request_type(**request_init) - # Determine if the message type is proto-plus or protobuf - test_field = oracledatabase.CreateCloudExadataInfrastructureRequest.meta.fields[ - "cloud_exadata_infrastructure" - ] + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") - def get_message_fields(field): - # Given a field which is a message (composite type), return a list with - # all the fields of the message. - # If the field is not a composite type, return an empty list. - message_fields = [] + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.stop_autonomous_database(request) - if hasattr(field, "message") and field.message: - is_field_type_proto_plus_type = not hasattr(field.message, "DESCRIPTOR") + # Establish that the response is the type that we expect. + json_return_value = json_format.MessageToJson(return_value) - if is_field_type_proto_plus_type: - message_fields = field.message.meta.fields.values() - # Add `# pragma: NO COVER` because there may not be any `*_pb2` field types - else: # pragma: NO COVER - message_fields = field.message.DESCRIPTOR.fields - return message_fields - runtime_nested_fields = [ - (field.name, nested_field.name) - for field in get_message_fields(test_field) - for nested_field in get_message_fields(field) - ] +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_stop_autonomous_database_rest_interceptors(null_interceptor): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.OracleDatabaseRestInterceptor(), + ) + client = OracleDatabaseClient(transport=transport) - subfields_not_in_runtime = [] + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object(operation.Operation, "_set_result_from_operation"), + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "post_stop_autonomous_database" + ) as post, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_stop_autonomous_database_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "pre_stop_autonomous_database" + ) as pre, + ): + pre.assert_not_called() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = oracledatabase.StopAutonomousDatabaseRequest.pb( + oracledatabase.StopAutonomousDatabaseRequest() + ) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } - # For each item in the sample request, create a list of sub fields which are not present at runtime - # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime - for field, value in request_init[ - "cloud_exadata_infrastructure" - ].items(): # pragma: NO COVER - result = None - is_repeated = False - # For repeated fields - if isinstance(value, list) and len(value): - is_repeated = True - result = value[0] - # For fields where the type is another message - if isinstance(value, dict): - result = value + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = json_format.MessageToJson(operations_pb2.Operation()) + req.return_value.content = return_value - if result and hasattr(result, "keys"): - for subfield in result.keys(): - if (field, subfield) not in runtime_nested_fields: - subfields_not_in_runtime.append( - { - "field": field, - "subfield": subfield, - "is_repeated": is_repeated, - } - ) + request = oracledatabase.StopAutonomousDatabaseRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + post.return_value = operations_pb2.Operation() + post_with_metadata.return_value = operations_pb2.Operation(), metadata + + client.stop_autonomous_database( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + + pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() + + +def test_start_autonomous_database_rest_bad_request( + request_type=oracledatabase.StartAutonomousDatabaseRequest, +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.start_autonomous_database(request) + + +@pytest.mark.parametrize( + "request_type", + [ + oracledatabase.StartAutonomousDatabaseRequest, + dict, + ], +) +def test_start_autonomous_database_rest_call_success(request_type): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) - # Remove fields from the sample request which are not present in the runtime version of the dependency - # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime - for subfield_to_delete in subfields_not_in_runtime: # pragma: NO COVER - field = subfield_to_delete.get("field") - field_repeated = subfield_to_delete.get("is_repeated") - subfield = subfield_to_delete.get("subfield") - if subfield: - if field_repeated: - for i in range( - 0, len(request_init["cloud_exadata_infrastructure"][field]) - ): - del request_init["cloud_exadata_infrastructure"][field][i][subfield] - else: - del request_init["cloud_exadata_infrastructure"][field][subfield] + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + } request = request_type(**request_init) # Mock the http request call within the method and fake a response. @@ -42654,14 +62655,14 @@ def get_message_fields(field): response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.create_cloud_exadata_infrastructure(request) + response = client.start_autonomous_database(request) # Establish that the response is the type that we expect. json_return_value = json_format.MessageToJson(return_value) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_create_cloud_exadata_infrastructure_rest_interceptors(null_interceptor): +def test_start_autonomous_database_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -42675,23 +62676,21 @@ def test_create_cloud_exadata_infrastructure_rest_interceptors(null_interceptor) mock.patch.object(path_template, "transcode") as transcode, mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.OracleDatabaseRestInterceptor, - "post_create_cloud_exadata_infrastructure", + transports.OracleDatabaseRestInterceptor, "post_start_autonomous_database" ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_create_cloud_exadata_infrastructure_with_metadata", + "post_start_autonomous_database_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, - "pre_create_cloud_exadata_infrastructure", + transports.OracleDatabaseRestInterceptor, "pre_start_autonomous_database" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.CreateCloudExadataInfrastructureRequest.pb( - oracledatabase.CreateCloudExadataInfrastructureRequest() + pb_message = oracledatabase.StartAutonomousDatabaseRequest.pb( + oracledatabase.StartAutonomousDatabaseRequest() ) transcode.return_value = { "method": "post", @@ -42706,7 +62705,7 @@ def test_create_cloud_exadata_infrastructure_rest_interceptors(null_interceptor) return_value = json_format.MessageToJson(operations_pb2.Operation()) req.return_value.content = return_value - request = oracledatabase.CreateCloudExadataInfrastructureRequest() + request = oracledatabase.StartAutonomousDatabaseRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), @@ -42715,7 +62714,7 @@ def test_create_cloud_exadata_infrastructure_rest_interceptors(null_interceptor) post.return_value = operations_pb2.Operation() post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.create_cloud_exadata_infrastructure( + client.start_autonomous_database( request, metadata=[ ("key", "val"), @@ -42728,15 +62727,15 @@ def test_create_cloud_exadata_infrastructure_rest_interceptors(null_interceptor) post_with_metadata.assert_called_once() -def test_delete_cloud_exadata_infrastructure_rest_bad_request( - request_type=oracledatabase.DeleteCloudExadataInfrastructureRequest, +def test_restart_autonomous_database_rest_bad_request( + request_type=oracledatabase.RestartAutonomousDatabaseRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/cloudExadataInfrastructures/sample3" + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" } request = request_type(**request_init) @@ -42753,24 +62752,24 @@ def test_delete_cloud_exadata_infrastructure_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.delete_cloud_exadata_infrastructure(request) + client.restart_autonomous_database(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.DeleteCloudExadataInfrastructureRequest, + oracledatabase.RestartAutonomousDatabaseRequest, dict, ], ) -def test_delete_cloud_exadata_infrastructure_rest_call_success(request_type): +def test_restart_autonomous_database_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/cloudExadataInfrastructures/sample3" + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" } request = request_type(**request_init) @@ -42786,14 +62785,14 @@ def test_delete_cloud_exadata_infrastructure_rest_call_success(request_type): response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.delete_cloud_exadata_infrastructure(request) + response = client.restart_autonomous_database(request) # Establish that the response is the type that we expect. json_return_value = json_format.MessageToJson(return_value) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_delete_cloud_exadata_infrastructure_rest_interceptors(null_interceptor): +def test_restart_autonomous_database_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -42807,23 +62806,21 @@ def test_delete_cloud_exadata_infrastructure_rest_interceptors(null_interceptor) mock.patch.object(path_template, "transcode") as transcode, mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.OracleDatabaseRestInterceptor, - "post_delete_cloud_exadata_infrastructure", + transports.OracleDatabaseRestInterceptor, "post_restart_autonomous_database" ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_delete_cloud_exadata_infrastructure_with_metadata", + "post_restart_autonomous_database_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, - "pre_delete_cloud_exadata_infrastructure", + transports.OracleDatabaseRestInterceptor, "pre_restart_autonomous_database" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.DeleteCloudExadataInfrastructureRequest.pb( - oracledatabase.DeleteCloudExadataInfrastructureRequest() + pb_message = oracledatabase.RestartAutonomousDatabaseRequest.pb( + oracledatabase.RestartAutonomousDatabaseRequest() ) transcode.return_value = { "method": "post", @@ -42838,7 +62835,7 @@ def test_delete_cloud_exadata_infrastructure_rest_interceptors(null_interceptor) return_value = json_format.MessageToJson(operations_pb2.Operation()) req.return_value.content = return_value - request = oracledatabase.DeleteCloudExadataInfrastructureRequest() + request = oracledatabase.RestartAutonomousDatabaseRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), @@ -42847,7 +62844,7 @@ def test_delete_cloud_exadata_infrastructure_rest_interceptors(null_interceptor) post.return_value = operations_pb2.Operation() post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.delete_cloud_exadata_infrastructure( + client.restart_autonomous_database( request, metadata=[ ("key", "val"), @@ -42860,14 +62857,16 @@ def test_delete_cloud_exadata_infrastructure_rest_interceptors(null_interceptor) post_with_metadata.assert_called_once() -def test_list_cloud_vm_clusters_rest_bad_request( - request_type=oracledatabase.ListCloudVmClustersRequest, +def test_switchover_autonomous_database_rest_bad_request( + request_type=oracledatabase.SwitchoverAutonomousDatabaseRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2"} + request_init = { + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + } request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -42883,51 +62882,47 @@ def test_list_cloud_vm_clusters_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_cloud_vm_clusters(request) + client.switchover_autonomous_database(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.ListCloudVmClustersRequest, + oracledatabase.SwitchoverAutonomousDatabaseRequest, dict, ], ) -def test_list_cloud_vm_clusters_rest_call_success(request_type): +def test_switchover_autonomous_database_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2"} + request_init = { + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + } request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListCloudVmClustersResponse( - next_page_token="next_page_token_value", - ) + return_value = operations_pb2.Operation(name="operations/spam") # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = oracledatabase.ListCloudVmClustersResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_cloud_vm_clusters(request) + response = client.switchover_autonomous_database(request) # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListCloudVmClustersPager) - assert response.next_page_token == "next_page_token_value" + json_return_value = json_format.MessageToJson(return_value) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_cloud_vm_clusters_rest_interceptors(null_interceptor): +def test_switchover_autonomous_database_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -42939,22 +62934,25 @@ def test_list_cloud_vm_clusters_rest_interceptors(null_interceptor): with ( mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_list_cloud_vm_clusters" + transports.OracleDatabaseRestInterceptor, + "post_switchover_autonomous_database", ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_list_cloud_vm_clusters_with_metadata", + "post_switchover_autonomous_database_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_list_cloud_vm_clusters" + transports.OracleDatabaseRestInterceptor, + "pre_switchover_autonomous_database", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.ListCloudVmClustersRequest.pb( - oracledatabase.ListCloudVmClustersRequest() + pb_message = oracledatabase.SwitchoverAutonomousDatabaseRequest.pb( + oracledatabase.SwitchoverAutonomousDatabaseRequest() ) transcode.return_value = { "method": "post", @@ -42966,24 +62964,19 @@ def test_list_cloud_vm_clusters_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = oracledatabase.ListCloudVmClustersResponse.to_json( - oracledatabase.ListCloudVmClustersResponse() - ) + return_value = json_format.MessageToJson(operations_pb2.Operation()) req.return_value.content = return_value - request = oracledatabase.ListCloudVmClustersRequest() + request = oracledatabase.SwitchoverAutonomousDatabaseRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = oracledatabase.ListCloudVmClustersResponse() - post_with_metadata.return_value = ( - oracledatabase.ListCloudVmClustersResponse(), - metadata, - ) + post.return_value = operations_pb2.Operation() + post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.list_cloud_vm_clusters( + client.switchover_autonomous_database( request, metadata=[ ("key", "val"), @@ -42996,15 +62989,15 @@ def test_list_cloud_vm_clusters_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_get_cloud_vm_cluster_rest_bad_request( - request_type=oracledatabase.GetCloudVmClusterRequest, +def test_failover_autonomous_database_rest_bad_request( + request_type=oracledatabase.FailoverAutonomousDatabaseRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/cloudVmClusters/sample3" + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" } request = request_type(**request_init) @@ -43021,71 +63014,47 @@ def test_get_cloud_vm_cluster_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_cloud_vm_cluster(request) + client.failover_autonomous_database(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.GetCloudVmClusterRequest, + oracledatabase.FailoverAutonomousDatabaseRequest, dict, ], ) -def test_get_cloud_vm_cluster_rest_call_success(request_type): +def test_failover_autonomous_database_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/cloudVmClusters/sample3" + "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" } request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = vm_cluster.CloudVmCluster( - name="name_value", - exadata_infrastructure="exadata_infrastructure_value", - display_name="display_name_value", - cidr="cidr_value", - backup_subnet_cidr="backup_subnet_cidr_value", - network="network_value", - gcp_oracle_zone="gcp_oracle_zone_value", - odb_network="odb_network_value", - odb_subnet="odb_subnet_value", - backup_odb_subnet="backup_odb_subnet_value", - ) + return_value = operations_pb2.Operation(name="operations/spam") # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = vm_cluster.CloudVmCluster.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_cloud_vm_cluster(request) + response = client.failover_autonomous_database(request) # Establish that the response is the type that we expect. - assert isinstance(response, vm_cluster.CloudVmCluster) - assert response.name == "name_value" - assert response.exadata_infrastructure == "exadata_infrastructure_value" - assert response.display_name == "display_name_value" - assert response.cidr == "cidr_value" - assert response.backup_subnet_cidr == "backup_subnet_cidr_value" - assert response.network == "network_value" - assert response.gcp_oracle_zone == "gcp_oracle_zone_value" - assert response.odb_network == "odb_network_value" - assert response.odb_subnet == "odb_subnet_value" - assert response.backup_odb_subnet == "backup_odb_subnet_value" + json_return_value = json_format.MessageToJson(return_value) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_get_cloud_vm_cluster_rest_interceptors(null_interceptor): +def test_failover_autonomous_database_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -43097,22 +63066,24 @@ def test_get_cloud_vm_cluster_rest_interceptors(null_interceptor): with ( mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_get_cloud_vm_cluster" + transports.OracleDatabaseRestInterceptor, + "post_failover_autonomous_database", ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_get_cloud_vm_cluster_with_metadata", + "post_failover_autonomous_database_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_get_cloud_vm_cluster" + transports.OracleDatabaseRestInterceptor, "pre_failover_autonomous_database" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.GetCloudVmClusterRequest.pb( - oracledatabase.GetCloudVmClusterRequest() + pb_message = oracledatabase.FailoverAutonomousDatabaseRequest.pb( + oracledatabase.FailoverAutonomousDatabaseRequest() ) transcode.return_value = { "method": "post", @@ -43124,19 +63095,19 @@ def test_get_cloud_vm_cluster_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = vm_cluster.CloudVmCluster.to_json(vm_cluster.CloudVmCluster()) + return_value = json_format.MessageToJson(operations_pb2.Operation()) req.return_value.content = return_value - request = oracledatabase.GetCloudVmClusterRequest() + request = oracledatabase.FailoverAutonomousDatabaseRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = vm_cluster.CloudVmCluster() - post_with_metadata.return_value = vm_cluster.CloudVmCluster(), metadata + post.return_value = operations_pb2.Operation() + post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.get_cloud_vm_cluster( + client.failover_autonomous_database( request, metadata=[ ("key", "val"), @@ -43149,8 +63120,8 @@ def test_get_cloud_vm_cluster_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_create_cloud_vm_cluster_rest_bad_request( - request_type=oracledatabase.CreateCloudVmClusterRequest, +def test_list_odb_networks_rest_bad_request( + request_type=odb_network.ListOdbNetworksRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" @@ -43172,171 +63143,53 @@ def test_create_cloud_vm_cluster_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.create_cloud_vm_cluster(request) + client.list_odb_networks(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.CreateCloudVmClusterRequest, + odb_network.ListOdbNetworksRequest, dict, ], ) -def test_create_cloud_vm_cluster_rest_call_success(request_type): +def test_list_odb_networks_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = {"parent": "projects/sample1/locations/sample2"} - request_init["cloud_vm_cluster"] = { - "name": "name_value", - "exadata_infrastructure": "exadata_infrastructure_value", - "display_name": "display_name_value", - "properties": { - "ocid": "ocid_value", - "license_type": 1, - "gi_version": "gi_version_value", - "time_zone": {"id": "id_value", "version": "version_value"}, - "ssh_public_keys": ["ssh_public_keys_value1", "ssh_public_keys_value2"], - "node_count": 1070, - "shape": "shape_value", - "ocpu_count": 0.1087, - "memory_size_gb": 1499, - "db_node_storage_size_gb": 2401, - "storage_size_gb": 1591, - "data_storage_size_tb": 0.2109, - "disk_redundancy": 1, - "sparse_diskgroup_enabled": True, - "local_backup_enabled": True, - "hostname_prefix": "hostname_prefix_value", - "diagnostics_data_collection_options": { - "diagnostics_events_enabled": True, - "health_monitoring_enabled": True, - "incident_logs_enabled": True, - }, - "state": 1, - "scan_listener_port_tcp": 2356, - "scan_listener_port_tcp_ssl": 2789, - "domain": "domain_value", - "scan_dns": "scan_dns_value", - "hostname": "hostname_value", - "cpu_core_count": 1496, - "system_version": "system_version_value", - "scan_ip_ids": ["scan_ip_ids_value1", "scan_ip_ids_value2"], - "scan_dns_record_id": "scan_dns_record_id_value", - "oci_url": "oci_url_value", - "db_server_ocids": ["db_server_ocids_value1", "db_server_ocids_value2"], - "compartment_id": "compartment_id_value", - "dns_listener_ip": "dns_listener_ip_value", - "cluster_name": "cluster_name_value", - "compute_model": 1, - }, - "labels": {}, - "create_time": {"seconds": 751, "nanos": 543}, - "cidr": "cidr_value", - "backup_subnet_cidr": "backup_subnet_cidr_value", - "network": "network_value", - "gcp_oracle_zone": "gcp_oracle_zone_value", - "odb_network": "odb_network_value", - "odb_subnet": "odb_subnet_value", - "backup_odb_subnet": "backup_odb_subnet_value", - "identity_connector": { - "service_agent_email": "service_agent_email_value", - "connection_state": 1, - }, - } - # The version of a generated dependency at test runtime may differ from the version used during generation. - # Delete any fields which are not present in the current runtime dependency - # See https://github.com/googleapis/gapic-generator-python/issues/1748 - - # Determine if the message type is proto-plus or protobuf - test_field = oracledatabase.CreateCloudVmClusterRequest.meta.fields[ - "cloud_vm_cluster" - ] - - def get_message_fields(field): - # Given a field which is a message (composite type), return a list with - # all the fields of the message. - # If the field is not a composite type, return an empty list. - message_fields = [] - - if hasattr(field, "message") and field.message: - is_field_type_proto_plus_type = not hasattr(field.message, "DESCRIPTOR") - - if is_field_type_proto_plus_type: - message_fields = field.message.meta.fields.values() - # Add `# pragma: NO COVER` because there may not be any `*_pb2` field types - else: # pragma: NO COVER - message_fields = field.message.DESCRIPTOR.fields - return message_fields - - runtime_nested_fields = [ - (field.name, nested_field.name) - for field in get_message_fields(test_field) - for nested_field in get_message_fields(field) - ] - - subfields_not_in_runtime = [] - - # For each item in the sample request, create a list of sub fields which are not present at runtime - # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime - for field, value in request_init["cloud_vm_cluster"].items(): # pragma: NO COVER - result = None - is_repeated = False - # For repeated fields - if isinstance(value, list) and len(value): - is_repeated = True - result = value[0] - # For fields where the type is another message - if isinstance(value, dict): - result = value - - if result and hasattr(result, "keys"): - for subfield in result.keys(): - if (field, subfield) not in runtime_nested_fields: - subfields_not_in_runtime.append( - { - "field": field, - "subfield": subfield, - "is_repeated": is_repeated, - } - ) - - # Remove fields from the sample request which are not present in the runtime version of the dependency - # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime - for subfield_to_delete in subfields_not_in_runtime: # pragma: NO COVER - field = subfield_to_delete.get("field") - field_repeated = subfield_to_delete.get("is_repeated") - subfield = subfield_to_delete.get("subfield") - if subfield: - if field_repeated: - for i in range(0, len(request_init["cloud_vm_cluster"][field])): - del request_init["cloud_vm_cluster"][field][i][subfield] - else: - del request_init["cloud_vm_cluster"][field][subfield] request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = odb_network.ListOdbNetworksResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = odb_network.ListOdbNetworksResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.create_cloud_vm_cluster(request) + response = client.list_odb_networks(request) # Establish that the response is the type that we expect. - json_return_value = json_format.MessageToJson(return_value) + assert isinstance(response, pagers.ListOdbNetworksPager) + assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_create_cloud_vm_cluster_rest_interceptors(null_interceptor): +def test_list_odb_networks_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -43348,23 +63201,22 @@ def test_create_cloud_vm_cluster_rest_interceptors(null_interceptor): with ( mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, - mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_create_cloud_vm_cluster" + transports.OracleDatabaseRestInterceptor, "post_list_odb_networks" ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_create_cloud_vm_cluster_with_metadata", + "post_list_odb_networks_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_create_cloud_vm_cluster" + transports.OracleDatabaseRestInterceptor, "pre_list_odb_networks" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.CreateCloudVmClusterRequest.pb( - oracledatabase.CreateCloudVmClusterRequest() + pb_message = odb_network.ListOdbNetworksRequest.pb( + odb_network.ListOdbNetworksRequest() ) transcode.return_value = { "method": "post", @@ -43376,19 +63228,24 @@ def test_create_cloud_vm_cluster_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = json_format.MessageToJson(operations_pb2.Operation()) + return_value = odb_network.ListOdbNetworksResponse.to_json( + odb_network.ListOdbNetworksResponse() + ) req.return_value.content = return_value - request = oracledatabase.CreateCloudVmClusterRequest() + request = odb_network.ListOdbNetworksRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = operations_pb2.Operation() - post_with_metadata.return_value = operations_pb2.Operation(), metadata + post.return_value = odb_network.ListOdbNetworksResponse() + post_with_metadata.return_value = ( + odb_network.ListOdbNetworksResponse(), + metadata, + ) - client.create_cloud_vm_cluster( + client.list_odb_networks( request, metadata=[ ("key", "val"), @@ -43401,16 +63258,14 @@ def test_create_cloud_vm_cluster_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_delete_cloud_vm_cluster_rest_bad_request( - request_type=oracledatabase.DeleteCloudVmClusterRequest, +def test_get_odb_network_rest_bad_request( + request_type=odb_network.GetOdbNetworkRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "name": "projects/sample1/locations/sample2/cloudVmClusters/sample3" - } + request_init = {"name": "projects/sample1/locations/sample2/odbNetworks/sample3"} request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -43426,47 +63281,59 @@ def test_delete_cloud_vm_cluster_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.delete_cloud_vm_cluster(request) + client.get_odb_network(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.DeleteCloudVmClusterRequest, + odb_network.GetOdbNetworkRequest, dict, ], ) -def test_delete_cloud_vm_cluster_rest_call_success(request_type): +def test_get_odb_network_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "name": "projects/sample1/locations/sample2/cloudVmClusters/sample3" - } + request_init = {"name": "projects/sample1/locations/sample2/odbNetworks/sample3"} request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = odb_network.OdbNetwork( + name="name_value", + network="network_value", + state=odb_network.OdbNetwork.State.PROVISIONING, + entitlement_id="entitlement_id_value", + gcp_oracle_zone="gcp_oracle_zone_value", + ) # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = odb_network.OdbNetwork.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.delete_cloud_vm_cluster(request) + response = client.get_odb_network(request) # Establish that the response is the type that we expect. - json_return_value = json_format.MessageToJson(return_value) + assert isinstance(response, odb_network.OdbNetwork) + assert response.name == "name_value" + assert response.network == "network_value" + assert response.state == odb_network.OdbNetwork.State.PROVISIONING + assert response.entitlement_id == "entitlement_id_value" + assert response.gcp_oracle_zone == "gcp_oracle_zone_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_delete_cloud_vm_cluster_rest_interceptors(null_interceptor): +def test_get_odb_network_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -43478,23 +63345,22 @@ def test_delete_cloud_vm_cluster_rest_interceptors(null_interceptor): with ( mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, - mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_delete_cloud_vm_cluster" + transports.OracleDatabaseRestInterceptor, "post_get_odb_network" ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_delete_cloud_vm_cluster_with_metadata", + "post_get_odb_network_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_delete_cloud_vm_cluster" + transports.OracleDatabaseRestInterceptor, "pre_get_odb_network" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.DeleteCloudVmClusterRequest.pb( - oracledatabase.DeleteCloudVmClusterRequest() + pb_message = odb_network.GetOdbNetworkRequest.pb( + odb_network.GetOdbNetworkRequest() ) transcode.return_value = { "method": "post", @@ -43506,19 +63372,19 @@ def test_delete_cloud_vm_cluster_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = json_format.MessageToJson(operations_pb2.Operation()) + return_value = odb_network.OdbNetwork.to_json(odb_network.OdbNetwork()) req.return_value.content = return_value - request = oracledatabase.DeleteCloudVmClusterRequest() + request = odb_network.GetOdbNetworkRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = operations_pb2.Operation() - post_with_metadata.return_value = operations_pb2.Operation(), metadata + post.return_value = odb_network.OdbNetwork() + post_with_metadata.return_value = odb_network.OdbNetwork(), metadata - client.delete_cloud_vm_cluster( + client.get_odb_network( request, metadata=[ ("key", "val"), @@ -43531,8 +63397,8 @@ def test_delete_cloud_vm_cluster_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_list_entitlements_rest_bad_request( - request_type=oracledatabase.ListEntitlementsRequest, +def test_create_odb_network_rest_bad_request( + request_type=gco_odb_network.CreateOdbNetworkRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" @@ -43541,64 +63407,134 @@ def test_list_entitlements_rest_bad_request( request_init = {"parent": "projects/sample1/locations/sample2"} request = request_type(**request_init) - # Mock the http request call within the method and fake a BadRequest error. - with ( - mock.patch.object(Session, "request") as req, - pytest.raises(core_exceptions.BadRequest), - ): - # Wrap the value into a proper Response obj - response_value = mock.Mock() - json_return_value = "" - response_value.json = mock.Mock(return_value={}) - response_value.status_code = 400 - response_value.request = mock.Mock() - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_entitlements(request) + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.create_odb_network(request) + + +@pytest.mark.parametrize( + "request_type", + [ + gco_odb_network.CreateOdbNetworkRequest, + dict, + ], +) +def test_create_odb_network_rest_call_success(request_type): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + # send a request that will satisfy transcoding + request_init = {"parent": "projects/sample1/locations/sample2"} + request_init["odb_network"] = { + "name": "name_value", + "network": "network_value", + "labels": {}, + "create_time": {"seconds": 751, "nanos": 543}, + "state": 1, + "entitlement_id": "entitlement_id_value", + "gcp_oracle_zone": "gcp_oracle_zone_value", + } + # The version of a generated dependency at test runtime may differ from the version used during generation. + # Delete any fields which are not present in the current runtime dependency + # See https://github.com/googleapis/gapic-generator-python/issues/1748 + + # Determine if the message type is proto-plus or protobuf + test_field = gco_odb_network.CreateOdbNetworkRequest.meta.fields["odb_network"] + + def get_message_fields(field): + # Given a field which is a message (composite type), return a list with + # all the fields of the message. + # If the field is not a composite type, return an empty list. + message_fields = [] + + if hasattr(field, "message") and field.message: + is_field_type_proto_plus_type = not hasattr(field.message, "DESCRIPTOR") + + if is_field_type_proto_plus_type: + message_fields = field.message.meta.fields.values() + # Add `# pragma: NO COVER` because there may not be any `*_pb2` field types + else: # pragma: NO COVER + message_fields = field.message.DESCRIPTOR.fields + return message_fields + + runtime_nested_fields = [ + (field.name, nested_field.name) + for field in get_message_fields(test_field) + for nested_field in get_message_fields(field) + ] + + subfields_not_in_runtime = [] + # For each item in the sample request, create a list of sub fields which are not present at runtime + # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime + for field, value in request_init["odb_network"].items(): # pragma: NO COVER + result = None + is_repeated = False + # For repeated fields + if isinstance(value, list) and len(value): + is_repeated = True + result = value[0] + # For fields where the type is another message + if isinstance(value, dict): + result = value -@pytest.mark.parametrize( - "request_type", - [ - oracledatabase.ListEntitlementsRequest, - dict, - ], -) -def test_list_entitlements_rest_call_success(request_type): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), transport="rest" - ) + if result and hasattr(result, "keys"): + for subfield in result.keys(): + if (field, subfield) not in runtime_nested_fields: + subfields_not_in_runtime.append( + { + "field": field, + "subfield": subfield, + "is_repeated": is_repeated, + } + ) - # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2"} + # Remove fields from the sample request which are not present in the runtime version of the dependency + # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime + for subfield_to_delete in subfields_not_in_runtime: # pragma: NO COVER + field = subfield_to_delete.get("field") + field_repeated = subfield_to_delete.get("is_repeated") + subfield = subfield_to_delete.get("subfield") + if subfield: + if field_repeated: + for i in range(0, len(request_init["odb_network"][field])): + del request_init["odb_network"][field][i][subfield] + else: + del request_init["odb_network"][field][subfield] request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListEntitlementsResponse( - next_page_token="next_page_token_value", - ) + return_value = operations_pb2.Operation(name="operations/spam") # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = oracledatabase.ListEntitlementsResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_entitlements(request) + response = client.create_odb_network(request) # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListEntitlementsPager) - assert response.next_page_token == "next_page_token_value" + json_return_value = json_format.MessageToJson(return_value) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_entitlements_rest_interceptors(null_interceptor): +def test_create_odb_network_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -43610,22 +63546,23 @@ def test_list_entitlements_rest_interceptors(null_interceptor): with ( mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_list_entitlements" + transports.OracleDatabaseRestInterceptor, "post_create_odb_network" ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_list_entitlements_with_metadata", + "post_create_odb_network_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_list_entitlements" + transports.OracleDatabaseRestInterceptor, "pre_create_odb_network" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.ListEntitlementsRequest.pb( - oracledatabase.ListEntitlementsRequest() + pb_message = gco_odb_network.CreateOdbNetworkRequest.pb( + gco_odb_network.CreateOdbNetworkRequest() ) transcode.return_value = { "method": "post", @@ -43637,24 +63574,19 @@ def test_list_entitlements_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = oracledatabase.ListEntitlementsResponse.to_json( - oracledatabase.ListEntitlementsResponse() - ) + return_value = json_format.MessageToJson(operations_pb2.Operation()) req.return_value.content = return_value - request = oracledatabase.ListEntitlementsRequest() + request = gco_odb_network.CreateOdbNetworkRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = oracledatabase.ListEntitlementsResponse() - post_with_metadata.return_value = ( - oracledatabase.ListEntitlementsResponse(), - metadata, - ) + post.return_value = operations_pb2.Operation() + post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.list_entitlements( + client.create_odb_network( request, metadata=[ ("key", "val"), @@ -43667,16 +63599,14 @@ def test_list_entitlements_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_list_db_servers_rest_bad_request( - request_type=oracledatabase.ListDbServersRequest, +def test_delete_odb_network_rest_bad_request( + request_type=odb_network.DeleteOdbNetworkRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "parent": "projects/sample1/locations/sample2/cloudExadataInfrastructures/sample3" - } + request_init = {"name": "projects/sample1/locations/sample2/odbNetworks/sample3"} request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -43692,53 +63622,45 @@ def test_list_db_servers_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_db_servers(request) + client.delete_odb_network(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.ListDbServersRequest, + odb_network.DeleteOdbNetworkRequest, dict, ], ) -def test_list_db_servers_rest_call_success(request_type): +def test_delete_odb_network_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "parent": "projects/sample1/locations/sample2/cloudExadataInfrastructures/sample3" - } + request_init = {"name": "projects/sample1/locations/sample2/odbNetworks/sample3"} request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListDbServersResponse( - next_page_token="next_page_token_value", - ) + return_value = operations_pb2.Operation(name="operations/spam") # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = oracledatabase.ListDbServersResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_db_servers(request) + response = client.delete_odb_network(request) # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListDbServersPager) - assert response.next_page_token == "next_page_token_value" + json_return_value = json_format.MessageToJson(return_value) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_db_servers_rest_interceptors(null_interceptor): +def test_delete_odb_network_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -43750,22 +63672,23 @@ def test_list_db_servers_rest_interceptors(null_interceptor): with ( mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_list_db_servers" + transports.OracleDatabaseRestInterceptor, "post_delete_odb_network" ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_list_db_servers_with_metadata", + "post_delete_odb_network_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_list_db_servers" + transports.OracleDatabaseRestInterceptor, "pre_delete_odb_network" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.ListDbServersRequest.pb( - oracledatabase.ListDbServersRequest() + pb_message = odb_network.DeleteOdbNetworkRequest.pb( + odb_network.DeleteOdbNetworkRequest() ) transcode.return_value = { "method": "post", @@ -43777,24 +63700,19 @@ def test_list_db_servers_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = oracledatabase.ListDbServersResponse.to_json( - oracledatabase.ListDbServersResponse() - ) + return_value = json_format.MessageToJson(operations_pb2.Operation()) req.return_value.content = return_value - request = oracledatabase.ListDbServersRequest() + request = odb_network.DeleteOdbNetworkRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = oracledatabase.ListDbServersResponse() - post_with_metadata.return_value = ( - oracledatabase.ListDbServersResponse(), - metadata, - ) + post.return_value = operations_pb2.Operation() + post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.list_db_servers( + client.delete_odb_network( request, metadata=[ ("key", "val"), @@ -43807,14 +63725,14 @@ def test_list_db_servers_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_list_db_nodes_rest_bad_request(request_type=oracledatabase.ListDbNodesRequest): +def test_list_odb_subnets_rest_bad_request( + request_type=odb_subnet.ListOdbSubnetsRequest, +): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "parent": "projects/sample1/locations/sample2/cloudVmClusters/sample3" - } + request_init = {"parent": "projects/sample1/locations/sample2/odbNetworks/sample3"} request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -43830,32 +63748,31 @@ def test_list_db_nodes_rest_bad_request(request_type=oracledatabase.ListDbNodesR response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_db_nodes(request) + client.list_odb_subnets(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.ListDbNodesRequest, + odb_subnet.ListOdbSubnetsRequest, dict, ], ) -def test_list_db_nodes_rest_call_success(request_type): +def test_list_odb_subnets_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "parent": "projects/sample1/locations/sample2/cloudVmClusters/sample3" - } + request_init = {"parent": "projects/sample1/locations/sample2/odbNetworks/sample3"} request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListDbNodesResponse( + return_value = odb_subnet.ListOdbSubnetsResponse( next_page_token="next_page_token_value", + unreachable=["unreachable_value"], ) # Wrap the value into a proper Response obj @@ -43863,20 +63780,21 @@ def test_list_db_nodes_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = oracledatabase.ListDbNodesResponse.pb(return_value) + return_value = odb_subnet.ListOdbSubnetsResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_db_nodes(request) + response = client.list_odb_subnets(request) # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListDbNodesPager) + assert isinstance(response, pagers.ListOdbSubnetsPager) assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_db_nodes_rest_interceptors(null_interceptor): +def test_list_odb_subnets_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -43889,20 +63807,21 @@ def test_list_db_nodes_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_list_db_nodes" + transports.OracleDatabaseRestInterceptor, "post_list_odb_subnets" ) as post, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_list_db_nodes_with_metadata" + transports.OracleDatabaseRestInterceptor, + "post_list_odb_subnets_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_list_db_nodes" + transports.OracleDatabaseRestInterceptor, "pre_list_odb_subnets" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.ListDbNodesRequest.pb( - oracledatabase.ListDbNodesRequest() + pb_message = odb_subnet.ListOdbSubnetsRequest.pb( + odb_subnet.ListOdbSubnetsRequest() ) transcode.return_value = { "method": "post", @@ -43914,21 +63833,21 @@ def test_list_db_nodes_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = oracledatabase.ListDbNodesResponse.to_json( - oracledatabase.ListDbNodesResponse() + return_value = odb_subnet.ListOdbSubnetsResponse.to_json( + odb_subnet.ListOdbSubnetsResponse() ) req.return_value.content = return_value - request = oracledatabase.ListDbNodesRequest() + request = odb_subnet.ListOdbSubnetsRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = oracledatabase.ListDbNodesResponse() - post_with_metadata.return_value = oracledatabase.ListDbNodesResponse(), metadata + post.return_value = odb_subnet.ListOdbSubnetsResponse() + post_with_metadata.return_value = odb_subnet.ListOdbSubnetsResponse(), metadata - client.list_db_nodes( + client.list_odb_subnets( request, metadata=[ ("key", "val"), @@ -43941,14 +63860,14 @@ def test_list_db_nodes_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_list_gi_versions_rest_bad_request( - request_type=oracledatabase.ListGiVersionsRequest, -): +def test_get_odb_subnet_rest_bad_request(request_type=odb_subnet.GetOdbSubnetRequest): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2"} + request_init = { + "name": "projects/sample1/locations/sample2/odbNetworks/sample3/odbSubnets/sample4" + } request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -43964,30 +63883,35 @@ def test_list_gi_versions_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_gi_versions(request) + client.get_odb_subnet(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.ListGiVersionsRequest, + odb_subnet.GetOdbSubnetRequest, dict, ], ) -def test_list_gi_versions_rest_call_success(request_type): +def test_get_odb_subnet_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2"} + request_init = { + "name": "projects/sample1/locations/sample2/odbNetworks/sample3/odbSubnets/sample4" + } request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListGiVersionsResponse( - next_page_token="next_page_token_value", + return_value = odb_subnet.OdbSubnet( + name="name_value", + cidr_range="cidr_range_value", + purpose=odb_subnet.OdbSubnet.Purpose.CLIENT_SUBNET, + state=odb_subnet.OdbSubnet.State.PROVISIONING, ) # Wrap the value into a proper Response obj @@ -43995,20 +63919,23 @@ def test_list_gi_versions_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = oracledatabase.ListGiVersionsResponse.pb(return_value) + return_value = odb_subnet.OdbSubnet.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_gi_versions(request) + response = client.get_odb_subnet(request) # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListGiVersionsPager) - assert response.next_page_token == "next_page_token_value" + assert isinstance(response, odb_subnet.OdbSubnet) + assert response.name == "name_value" + assert response.cidr_range == "cidr_range_value" + assert response.purpose == odb_subnet.OdbSubnet.Purpose.CLIENT_SUBNET + assert response.state == odb_subnet.OdbSubnet.State.PROVISIONING @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_gi_versions_rest_interceptors(null_interceptor): +def test_get_odb_subnet_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -44021,22 +63948,20 @@ def test_list_gi_versions_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_list_gi_versions" + transports.OracleDatabaseRestInterceptor, "post_get_odb_subnet" ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_list_gi_versions_with_metadata", + "post_get_odb_subnet_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_list_gi_versions" + transports.OracleDatabaseRestInterceptor, "pre_get_odb_subnet" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.ListGiVersionsRequest.pb( - oracledatabase.ListGiVersionsRequest() - ) + pb_message = odb_subnet.GetOdbSubnetRequest.pb(odb_subnet.GetOdbSubnetRequest()) transcode.return_value = { "method": "post", "uri": "my_uri", @@ -44047,24 +63972,19 @@ def test_list_gi_versions_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = oracledatabase.ListGiVersionsResponse.to_json( - oracledatabase.ListGiVersionsResponse() - ) + return_value = odb_subnet.OdbSubnet.to_json(odb_subnet.OdbSubnet()) req.return_value.content = return_value - request = oracledatabase.ListGiVersionsRequest() + request = odb_subnet.GetOdbSubnetRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = oracledatabase.ListGiVersionsResponse() - post_with_metadata.return_value = ( - oracledatabase.ListGiVersionsResponse(), - metadata, - ) + post.return_value = odb_subnet.OdbSubnet() + post_with_metadata.return_value = odb_subnet.OdbSubnet(), metadata - client.list_gi_versions( + client.get_odb_subnet( request, metadata=[ ("key", "val"), @@ -44077,14 +63997,14 @@ def test_list_gi_versions_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_list_minor_versions_rest_bad_request( - request_type=minor_version.ListMinorVersionsRequest, +def test_create_odb_subnet_rest_bad_request( + request_type=gco_odb_subnet.CreateOdbSubnetRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2/giVersions/sample3"} + request_init = {"parent": "projects/sample1/locations/sample2/odbNetworks/sample3"} request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -44100,51 +64020,120 @@ def test_list_minor_versions_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_minor_versions(request) + client.create_odb_subnet(request) @pytest.mark.parametrize( "request_type", [ - minor_version.ListMinorVersionsRequest, + gco_odb_subnet.CreateOdbSubnetRequest, dict, ], ) -def test_list_minor_versions_rest_call_success(request_type): +def test_create_odb_subnet_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2/giVersions/sample3"} + request_init = {"parent": "projects/sample1/locations/sample2/odbNetworks/sample3"} + request_init["odb_subnet"] = { + "name": "name_value", + "cidr_range": "cidr_range_value", + "purpose": 1, + "labels": {}, + "create_time": {"seconds": 751, "nanos": 543}, + "state": 1, + } + # The version of a generated dependency at test runtime may differ from the version used during generation. + # Delete any fields which are not present in the current runtime dependency + # See https://github.com/googleapis/gapic-generator-python/issues/1748 + + # Determine if the message type is proto-plus or protobuf + test_field = gco_odb_subnet.CreateOdbSubnetRequest.meta.fields["odb_subnet"] + + def get_message_fields(field): + # Given a field which is a message (composite type), return a list with + # all the fields of the message. + # If the field is not a composite type, return an empty list. + message_fields = [] + + if hasattr(field, "message") and field.message: + is_field_type_proto_plus_type = not hasattr(field.message, "DESCRIPTOR") + + if is_field_type_proto_plus_type: + message_fields = field.message.meta.fields.values() + # Add `# pragma: NO COVER` because there may not be any `*_pb2` field types + else: # pragma: NO COVER + message_fields = field.message.DESCRIPTOR.fields + return message_fields + + runtime_nested_fields = [ + (field.name, nested_field.name) + for field in get_message_fields(test_field) + for nested_field in get_message_fields(field) + ] + + subfields_not_in_runtime = [] + + # For each item in the sample request, create a list of sub fields which are not present at runtime + # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime + for field, value in request_init["odb_subnet"].items(): # pragma: NO COVER + result = None + is_repeated = False + # For repeated fields + if isinstance(value, list) and len(value): + is_repeated = True + result = value[0] + # For fields where the type is another message + if isinstance(value, dict): + result = value + + if result and hasattr(result, "keys"): + for subfield in result.keys(): + if (field, subfield) not in runtime_nested_fields: + subfields_not_in_runtime.append( + { + "field": field, + "subfield": subfield, + "is_repeated": is_repeated, + } + ) + + # Remove fields from the sample request which are not present in the runtime version of the dependency + # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime + for subfield_to_delete in subfields_not_in_runtime: # pragma: NO COVER + field = subfield_to_delete.get("field") + field_repeated = subfield_to_delete.get("is_repeated") + subfield = subfield_to_delete.get("subfield") + if subfield: + if field_repeated: + for i in range(0, len(request_init["odb_subnet"][field])): + del request_init["odb_subnet"][field][i][subfield] + else: + del request_init["odb_subnet"][field][subfield] request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = minor_version.ListMinorVersionsResponse( - next_page_token="next_page_token_value", - ) + return_value = operations_pb2.Operation(name="operations/spam") # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = minor_version.ListMinorVersionsResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_minor_versions(request) + response = client.create_odb_subnet(request) # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListMinorVersionsPager) - assert response.next_page_token == "next_page_token_value" + json_return_value = json_format.MessageToJson(return_value) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_minor_versions_rest_interceptors(null_interceptor): +def test_create_odb_subnet_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -44156,22 +64145,23 @@ def test_list_minor_versions_rest_interceptors(null_interceptor): with ( mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_list_minor_versions" + transports.OracleDatabaseRestInterceptor, "post_create_odb_subnet" ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_list_minor_versions_with_metadata", + "post_create_odb_subnet_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_list_minor_versions" + transports.OracleDatabaseRestInterceptor, "pre_create_odb_subnet" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = minor_version.ListMinorVersionsRequest.pb( - minor_version.ListMinorVersionsRequest() + pb_message = gco_odb_subnet.CreateOdbSubnetRequest.pb( + gco_odb_subnet.CreateOdbSubnetRequest() ) transcode.return_value = { "method": "post", @@ -44183,24 +64173,19 @@ def test_list_minor_versions_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = minor_version.ListMinorVersionsResponse.to_json( - minor_version.ListMinorVersionsResponse() - ) + return_value = json_format.MessageToJson(operations_pb2.Operation()) req.return_value.content = return_value - request = minor_version.ListMinorVersionsRequest() + request = gco_odb_subnet.CreateOdbSubnetRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = minor_version.ListMinorVersionsResponse() - post_with_metadata.return_value = ( - minor_version.ListMinorVersionsResponse(), - metadata, - ) + post.return_value = operations_pb2.Operation() + post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.list_minor_versions( + client.create_odb_subnet( request, metadata=[ ("key", "val"), @@ -44213,14 +64198,16 @@ def test_list_minor_versions_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_list_db_system_shapes_rest_bad_request( - request_type=oracledatabase.ListDbSystemShapesRequest, +def test_delete_odb_subnet_rest_bad_request( + request_type=odb_subnet.DeleteOdbSubnetRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2"} + request_init = { + "name": "projects/sample1/locations/sample2/odbNetworks/sample3/odbSubnets/sample4" + } request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -44236,51 +64223,47 @@ def test_list_db_system_shapes_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_db_system_shapes(request) + client.delete_odb_subnet(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.ListDbSystemShapesRequest, + odb_subnet.DeleteOdbSubnetRequest, dict, ], ) -def test_list_db_system_shapes_rest_call_success(request_type): +def test_delete_odb_subnet_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2"} + request_init = { + "name": "projects/sample1/locations/sample2/odbNetworks/sample3/odbSubnets/sample4" + } request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListDbSystemShapesResponse( - next_page_token="next_page_token_value", - ) + return_value = operations_pb2.Operation(name="operations/spam") # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = oracledatabase.ListDbSystemShapesResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_db_system_shapes(request) + response = client.delete_odb_subnet(request) # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListDbSystemShapesPager) - assert response.next_page_token == "next_page_token_value" + json_return_value = json_format.MessageToJson(return_value) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_db_system_shapes_rest_interceptors(null_interceptor): +def test_delete_odb_subnet_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -44292,22 +64275,23 @@ def test_list_db_system_shapes_rest_interceptors(null_interceptor): with ( mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_list_db_system_shapes" + transports.OracleDatabaseRestInterceptor, "post_delete_odb_subnet" ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_list_db_system_shapes_with_metadata", + "post_delete_odb_subnet_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_list_db_system_shapes" + transports.OracleDatabaseRestInterceptor, "pre_delete_odb_subnet" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.ListDbSystemShapesRequest.pb( - oracledatabase.ListDbSystemShapesRequest() + pb_message = odb_subnet.DeleteOdbSubnetRequest.pb( + odb_subnet.DeleteOdbSubnetRequest() ) transcode.return_value = { "method": "post", @@ -44319,24 +64303,19 @@ def test_list_db_system_shapes_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = oracledatabase.ListDbSystemShapesResponse.to_json( - oracledatabase.ListDbSystemShapesResponse() - ) + return_value = json_format.MessageToJson(operations_pb2.Operation()) req.return_value.content = return_value - request = oracledatabase.ListDbSystemShapesRequest() + request = odb_subnet.DeleteOdbSubnetRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = oracledatabase.ListDbSystemShapesResponse() - post_with_metadata.return_value = ( - oracledatabase.ListDbSystemShapesResponse(), - metadata, - ) + post.return_value = operations_pb2.Operation() + post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.list_db_system_shapes( + client.delete_odb_subnet( request, metadata=[ ("key", "val"), @@ -44349,8 +64328,8 @@ def test_list_db_system_shapes_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_list_autonomous_databases_rest_bad_request( - request_type=oracledatabase.ListAutonomousDatabasesRequest, +def test_list_exadb_vm_clusters_rest_bad_request( + request_type=oracledatabase.ListExadbVmClustersRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" @@ -44372,17 +64351,17 @@ def test_list_autonomous_databases_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_autonomous_databases(request) + client.list_exadb_vm_clusters(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.ListAutonomousDatabasesRequest, + oracledatabase.ListExadbVmClustersRequest, dict, ], ) -def test_list_autonomous_databases_rest_call_success(request_type): +def test_list_exadb_vm_clusters_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) @@ -44394,8 +64373,9 @@ def test_list_autonomous_databases_rest_call_success(request_type): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListAutonomousDatabasesResponse( + return_value = oracledatabase.ListExadbVmClustersResponse( next_page_token="next_page_token_value", + unreachable=["unreachable_value"], ) # Wrap the value into a proper Response obj @@ -44403,20 +64383,21 @@ def test_list_autonomous_databases_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = oracledatabase.ListAutonomousDatabasesResponse.pb(return_value) + return_value = oracledatabase.ListExadbVmClustersResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_autonomous_databases(request) + response = client.list_exadb_vm_clusters(request) # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListAutonomousDatabasesPager) + assert isinstance(response, pagers.ListExadbVmClustersPager) assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_autonomous_databases_rest_interceptors(null_interceptor): +def test_list_exadb_vm_clusters_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -44429,21 +64410,21 @@ def test_list_autonomous_databases_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_list_autonomous_databases" + transports.OracleDatabaseRestInterceptor, "post_list_exadb_vm_clusters" ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_list_autonomous_databases_with_metadata", + "post_list_exadb_vm_clusters_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_list_autonomous_databases" + transports.OracleDatabaseRestInterceptor, "pre_list_exadb_vm_clusters" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.ListAutonomousDatabasesRequest.pb( - oracledatabase.ListAutonomousDatabasesRequest() + pb_message = oracledatabase.ListExadbVmClustersRequest.pb( + oracledatabase.ListExadbVmClustersRequest() ) transcode.return_value = { "method": "post", @@ -44455,24 +64436,24 @@ def test_list_autonomous_databases_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = oracledatabase.ListAutonomousDatabasesResponse.to_json( - oracledatabase.ListAutonomousDatabasesResponse() + return_value = oracledatabase.ListExadbVmClustersResponse.to_json( + oracledatabase.ListExadbVmClustersResponse() ) req.return_value.content = return_value - request = oracledatabase.ListAutonomousDatabasesRequest() + request = oracledatabase.ListExadbVmClustersRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = oracledatabase.ListAutonomousDatabasesResponse() + post.return_value = oracledatabase.ListExadbVmClustersResponse() post_with_metadata.return_value = ( - oracledatabase.ListAutonomousDatabasesResponse(), + oracledatabase.ListExadbVmClustersResponse(), metadata, ) - client.list_autonomous_databases( + client.list_exadb_vm_clusters( request, metadata=[ ("key", "val"), @@ -44485,15 +64466,15 @@ def test_list_autonomous_databases_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_get_autonomous_database_rest_bad_request( - request_type=oracledatabase.GetAutonomousDatabaseRequest, +def test_get_exadb_vm_cluster_rest_bad_request( + request_type=oracledatabase.GetExadbVmClusterRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + "name": "projects/sample1/locations/sample2/exadbVmClusters/sample3" } request = request_type(**request_init) @@ -44510,44 +64491,38 @@ def test_get_autonomous_database_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_autonomous_database(request) + client.get_exadb_vm_cluster(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.GetAutonomousDatabaseRequest, + oracledatabase.GetExadbVmClusterRequest, dict, ], ) -def test_get_autonomous_database_rest_call_success(request_type): +def test_get_exadb_vm_cluster_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + "name": "projects/sample1/locations/sample2/exadbVmClusters/sample3" } request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = autonomous_database.AutonomousDatabase( + return_value = exadb_vm_cluster.ExadbVmCluster( name="name_value", - database="database_value", - display_name="display_name_value", - entitlement_id="entitlement_id_value", - admin_password="admin_password_value", - network="network_value", - cidr="cidr_value", + gcp_oracle_zone="gcp_oracle_zone_value", odb_network="odb_network_value", odb_subnet="odb_subnet_value", - peer_autonomous_databases=["peer_autonomous_databases_value"], - disaster_recovery_supported_locations=[ - "disaster_recovery_supported_locations_value" - ], + backup_odb_subnet="backup_odb_subnet_value", + display_name="display_name_value", + entitlement_id="entitlement_id_value", ) # Wrap the value into a proper Response obj @@ -44555,32 +64530,26 @@ def test_get_autonomous_database_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = autonomous_database.AutonomousDatabase.pb(return_value) + return_value = exadb_vm_cluster.ExadbVmCluster.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_autonomous_database(request) + response = client.get_exadb_vm_cluster(request) # Establish that the response is the type that we expect. - assert isinstance(response, autonomous_database.AutonomousDatabase) + assert isinstance(response, exadb_vm_cluster.ExadbVmCluster) assert response.name == "name_value" - assert response.database == "database_value" - assert response.display_name == "display_name_value" - assert response.entitlement_id == "entitlement_id_value" - assert response.admin_password == "admin_password_value" - assert response.network == "network_value" - assert response.cidr == "cidr_value" + assert response.gcp_oracle_zone == "gcp_oracle_zone_value" assert response.odb_network == "odb_network_value" assert response.odb_subnet == "odb_subnet_value" - assert response.peer_autonomous_databases == ["peer_autonomous_databases_value"] - assert response.disaster_recovery_supported_locations == [ - "disaster_recovery_supported_locations_value" - ] + assert response.backup_odb_subnet == "backup_odb_subnet_value" + assert response.display_name == "display_name_value" + assert response.entitlement_id == "entitlement_id_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_get_autonomous_database_rest_interceptors(null_interceptor): +def test_get_exadb_vm_cluster_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -44593,21 +64562,21 @@ def test_get_autonomous_database_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_get_autonomous_database" + transports.OracleDatabaseRestInterceptor, "post_get_exadb_vm_cluster" ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_get_autonomous_database_with_metadata", + "post_get_exadb_vm_cluster_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_get_autonomous_database" + transports.OracleDatabaseRestInterceptor, "pre_get_exadb_vm_cluster" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.GetAutonomousDatabaseRequest.pb( - oracledatabase.GetAutonomousDatabaseRequest() + pb_message = oracledatabase.GetExadbVmClusterRequest.pb( + oracledatabase.GetExadbVmClusterRequest() ) transcode.return_value = { "method": "post", @@ -44619,24 +64588,21 @@ def test_get_autonomous_database_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = autonomous_database.AutonomousDatabase.to_json( - autonomous_database.AutonomousDatabase() + return_value = exadb_vm_cluster.ExadbVmCluster.to_json( + exadb_vm_cluster.ExadbVmCluster() ) req.return_value.content = return_value - request = oracledatabase.GetAutonomousDatabaseRequest() + request = oracledatabase.GetExadbVmClusterRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = autonomous_database.AutonomousDatabase() - post_with_metadata.return_value = ( - autonomous_database.AutonomousDatabase(), - metadata, - ) + post.return_value = exadb_vm_cluster.ExadbVmCluster() + post_with_metadata.return_value = exadb_vm_cluster.ExadbVmCluster(), metadata - client.get_autonomous_database( + client.get_exadb_vm_cluster( request, metadata=[ ("key", "val"), @@ -44649,8 +64615,8 @@ def test_get_autonomous_database_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_create_autonomous_database_rest_bad_request( - request_type=oracledatabase.CreateAutonomousDatabaseRequest, +def test_create_exadb_vm_cluster_rest_bad_request( + request_type=oracledatabase.CreateExadbVmClusterRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" @@ -44672,180 +64638,66 @@ def test_create_autonomous_database_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.create_autonomous_database(request) + client.create_exadb_vm_cluster(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.CreateAutonomousDatabaseRequest, + oracledatabase.CreateExadbVmClusterRequest, dict, ], ) -def test_create_autonomous_database_rest_call_success(request_type): +def test_create_exadb_vm_cluster_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = {"parent": "projects/sample1/locations/sample2"} - request_init["autonomous_database"] = { + request_init["exadb_vm_cluster"] = { "name": "name_value", - "database": "database_value", - "display_name": "display_name_value", - "entitlement_id": "entitlement_id_value", - "admin_password": "admin_password_value", "properties": { - "ocid": "ocid_value", - "compute_count": 0.1413, - "cpu_core_count": 1496, - "data_storage_size_tb": 2109, - "data_storage_size_gb": 2096, - "db_workload": 1, - "db_edition": 1, - "character_set": "character_set_value", - "n_character_set": "n_character_set_value", - "private_endpoint_ip": "private_endpoint_ip_value", - "private_endpoint_label": "private_endpoint_label_value", - "db_version": "db_version_value", - "is_auto_scaling_enabled": True, - "is_storage_auto_scaling_enabled": True, - "license_type": 1, - "customer_contacts": [{"email": "email_value"}], - "secret_id": "secret_id_value", - "vault_id": "vault_id_value", - "maintenance_schedule_type": 1, - "mtls_connection_required": True, - "backup_retention_period_days": 2975, - "actual_used_data_storage_size_tb": 0.3366, - "allocated_storage_size_tb": 0.2636, - "apex_details": { - "apex_version": "apex_version_value", - "ords_version": "ords_version_value", - }, - "are_primary_allowlisted_ips_used": True, - "lifecycle_details": "lifecycle_details_value", - "state": 1, - "autonomous_container_database_id": "autonomous_container_database_id_value", - "available_upgrade_versions": [ - "available_upgrade_versions_value1", - "available_upgrade_versions_value2", - ], - "connection_strings": { - "all_connection_strings": { - "high": "high_value", - "low": "low_value", - "medium": "medium_value", - }, - "dedicated": "dedicated_value", - "high": "high_value", - "low": "low_value", - "medium": "medium_value", - "profiles": [ - { - "consumer_group": 1, - "display_name": "display_name_value", - "host_format": 1, - "is_regional": True, - "protocol": 1, - "session_mode": 1, - "syntax_format": 1, - "tls_authentication": 1, - "value": "value_value", - } - ], - }, - "connection_urls": { - "apex_uri": "apex_uri_value", - "database_transforms_uri": "database_transforms_uri_value", - "graph_studio_uri": "graph_studio_uri_value", - "machine_learning_notebook_uri": "machine_learning_notebook_uri_value", - "machine_learning_user_management_uri": "machine_learning_user_management_uri_value", - "mongo_db_uri": "mongo_db_uri_value", - "ords_uri": "ords_uri_value", - "sql_dev_web_uri": "sql_dev_web_uri_value", - }, - "failed_data_recovery_duration": {"seconds": 751, "nanos": 543}, - "memory_table_gbs": 1691, - "is_local_data_guard_enabled": True, - "local_adg_auto_failover_max_data_loss_limit": 4513, - "local_standby_db": { - "lag_time_duration": {}, - "lifecycle_details": "lifecycle_details_value", - "state": 1, - "data_guard_role_changed_time": {"seconds": 751, "nanos": 543}, - "disaster_recovery_role_changed_time": {}, + "cluster_name": "cluster_name_value", + "grid_image_id": "grid_image_id_value", + "node_count": 1070, + "enabled_ecpu_count_per_node": 2826, + "additional_ecpu_count_per_node": 3160, + "vm_file_system_storage": {"size_in_gbs_per_node": 2103}, + "license_model": 1, + "exascale_db_storage_vault": "exascale_db_storage_vault_value", + "hostname_prefix": "hostname_prefix_value", + "hostname": "hostname_value", + "ssh_public_keys": ["ssh_public_keys_value1", "ssh_public_keys_value2"], + "data_collection_options": { + "is_diagnostics_events_enabled": True, + "is_health_monitoring_enabled": True, + "is_incident_logs_enabled": True, }, - "memory_per_oracle_compute_unit_gbs": 3626, - "local_disaster_recovery_type": 1, - "data_safe_state": 1, - "database_management_state": 1, - "open_mode": 1, - "operations_insights_state": 1, - "peer_db_ids": ["peer_db_ids_value1", "peer_db_ids_value2"], - "permission_level": 1, - "private_endpoint": "private_endpoint_value", - "refreshable_mode": 1, - "refreshable_state": 1, - "role": 1, - "scheduled_operation_details": [ - { - "day_of_week": 1, - "start_time": { - "hours": 561, - "minutes": 773, - "seconds": 751, - "nanos": 543, - }, - "stop_time": {}, - } - ], - "sql_web_developer_url": "sql_web_developer_url_value", - "supported_clone_regions": [ - "supported_clone_regions_value1", - "supported_clone_regions_value2", - ], - "used_data_storage_size_tbs": 2752, - "oci_url": "oci_url_value", - "total_auto_backup_storage_size_gbs": 0.36100000000000004, - "next_long_term_backup_time": {}, - "data_guard_role_changed_time": {}, - "disaster_recovery_role_changed_time": {}, - "maintenance_begin_time": {}, - "maintenance_end_time": {}, - "allowlisted_ips": ["allowlisted_ips_value1", "allowlisted_ips_value2"], - "encryption_key": {"provider": 1, "kms_key": "kms_key_value"}, - "encryption_key_history_entries": [ - {"encryption_key": {}, "activation_time": {}} - ], - "service_agent_email": "service_agent_email_value", + "time_zone": {"id": "id_value", "version": "version_value"}, + "lifecycle_state": 1, + "shape_attribute": 1, + "memory_size_gb": 1499, + "scan_listener_port_tcp": 2356, + "oci_uri": "oci_uri_value", + "gi_version": "gi_version_value", }, + "gcp_oracle_zone": "gcp_oracle_zone_value", "labels": {}, - "network": "network_value", - "cidr": "cidr_value", "odb_network": "odb_network_value", "odb_subnet": "odb_subnet_value", - "source_config": { - "autonomous_database": "autonomous_database_value", - "automatic_backups_replication_enabled": True, - }, - "peer_autonomous_databases": [ - "peer_autonomous_databases_value1", - "peer_autonomous_databases_value2", - ], - "create_time": {}, - "disaster_recovery_supported_locations": [ - "disaster_recovery_supported_locations_value1", - "disaster_recovery_supported_locations_value2", - ], + "backup_odb_subnet": "backup_odb_subnet_value", + "display_name": "display_name_value", + "create_time": {"seconds": 751, "nanos": 543}, + "entitlement_id": "entitlement_id_value", } # The version of a generated dependency at test runtime may differ from the version used during generation. # Delete any fields which are not present in the current runtime dependency # See https://github.com/googleapis/gapic-generator-python/issues/1748 # Determine if the message type is proto-plus or protobuf - test_field = oracledatabase.CreateAutonomousDatabaseRequest.meta.fields[ - "autonomous_database" + test_field = oracledatabase.CreateExadbVmClusterRequest.meta.fields[ + "exadb_vm_cluster" ] def get_message_fields(field): @@ -44874,7 +64726,7 @@ def get_message_fields(field): # For each item in the sample request, create a list of sub fields which are not present at runtime # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime - for field, value in request_init["autonomous_database"].items(): # pragma: NO COVER + for field, value in request_init["exadb_vm_cluster"].items(): # pragma: NO COVER result = None is_repeated = False # For repeated fields @@ -44904,10 +64756,10 @@ def get_message_fields(field): subfield = subfield_to_delete.get("subfield") if subfield: if field_repeated: - for i in range(0, len(request_init["autonomous_database"][field])): - del request_init["autonomous_database"][field][i][subfield] + for i in range(0, len(request_init["exadb_vm_cluster"][field])): + del request_init["exadb_vm_cluster"][field][i][subfield] else: - del request_init["autonomous_database"][field][subfield] + del request_init["exadb_vm_cluster"][field][subfield] request = request_type(**request_init) # Mock the http request call within the method and fake a response. @@ -44922,14 +64774,14 @@ def get_message_fields(field): response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.create_autonomous_database(request) + response = client.create_exadb_vm_cluster(request) # Establish that the response is the type that we expect. json_return_value = json_format.MessageToJson(return_value) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_create_autonomous_database_rest_interceptors(null_interceptor): +def test_create_exadb_vm_cluster_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -44943,21 +64795,21 @@ def test_create_autonomous_database_rest_interceptors(null_interceptor): mock.patch.object(path_template, "transcode") as transcode, mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_create_autonomous_database" + transports.OracleDatabaseRestInterceptor, "post_create_exadb_vm_cluster" ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_create_autonomous_database_with_metadata", + "post_create_exadb_vm_cluster_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_create_autonomous_database" + transports.OracleDatabaseRestInterceptor, "pre_create_exadb_vm_cluster" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.CreateAutonomousDatabaseRequest.pb( - oracledatabase.CreateAutonomousDatabaseRequest() + pb_message = oracledatabase.CreateExadbVmClusterRequest.pb( + oracledatabase.CreateExadbVmClusterRequest() ) transcode.return_value = { "method": "post", @@ -44972,7 +64824,7 @@ def test_create_autonomous_database_rest_interceptors(null_interceptor): return_value = json_format.MessageToJson(operations_pb2.Operation()) req.return_value.content = return_value - request = oracledatabase.CreateAutonomousDatabaseRequest() + request = oracledatabase.CreateExadbVmClusterRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), @@ -44981,7 +64833,7 @@ def test_create_autonomous_database_rest_interceptors(null_interceptor): post.return_value = operations_pb2.Operation() post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.create_autonomous_database( + client.create_exadb_vm_cluster( request, metadata=[ ("key", "val"), @@ -44994,273 +64846,50 @@ def test_create_autonomous_database_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_update_autonomous_database_rest_bad_request( - request_type=oracledatabase.UpdateAutonomousDatabaseRequest, -): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), transport="rest" - ) - # send a request that will satisfy transcoding - request_init = { - "autonomous_database": { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" - } - } - request = request_type(**request_init) - - # Mock the http request call within the method and fake a BadRequest error. - with ( - mock.patch.object(Session, "request") as req, - pytest.raises(core_exceptions.BadRequest), - ): - # Wrap the value into a proper Response obj - response_value = mock.Mock() - json_return_value = "" - response_value.json = mock.Mock(return_value={}) - response_value.status_code = 400 - response_value.request = mock.Mock() - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.update_autonomous_database(request) - - -@pytest.mark.parametrize( - "request_type", - [ - oracledatabase.UpdateAutonomousDatabaseRequest, - dict, - ], -) -def test_update_autonomous_database_rest_call_success(request_type): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), transport="rest" - ) - - # send a request that will satisfy transcoding - request_init = { - "autonomous_database": { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" - } - } - request_init["autonomous_database"] = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3", - "database": "database_value", - "display_name": "display_name_value", - "entitlement_id": "entitlement_id_value", - "admin_password": "admin_password_value", - "properties": { - "ocid": "ocid_value", - "compute_count": 0.1413, - "cpu_core_count": 1496, - "data_storage_size_tb": 2109, - "data_storage_size_gb": 2096, - "db_workload": 1, - "db_edition": 1, - "character_set": "character_set_value", - "n_character_set": "n_character_set_value", - "private_endpoint_ip": "private_endpoint_ip_value", - "private_endpoint_label": "private_endpoint_label_value", - "db_version": "db_version_value", - "is_auto_scaling_enabled": True, - "is_storage_auto_scaling_enabled": True, - "license_type": 1, - "customer_contacts": [{"email": "email_value"}], - "secret_id": "secret_id_value", - "vault_id": "vault_id_value", - "maintenance_schedule_type": 1, - "mtls_connection_required": True, - "backup_retention_period_days": 2975, - "actual_used_data_storage_size_tb": 0.3366, - "allocated_storage_size_tb": 0.2636, - "apex_details": { - "apex_version": "apex_version_value", - "ords_version": "ords_version_value", - }, - "are_primary_allowlisted_ips_used": True, - "lifecycle_details": "lifecycle_details_value", - "state": 1, - "autonomous_container_database_id": "autonomous_container_database_id_value", - "available_upgrade_versions": [ - "available_upgrade_versions_value1", - "available_upgrade_versions_value2", - ], - "connection_strings": { - "all_connection_strings": { - "high": "high_value", - "low": "low_value", - "medium": "medium_value", - }, - "dedicated": "dedicated_value", - "high": "high_value", - "low": "low_value", - "medium": "medium_value", - "profiles": [ - { - "consumer_group": 1, - "display_name": "display_name_value", - "host_format": 1, - "is_regional": True, - "protocol": 1, - "session_mode": 1, - "syntax_format": 1, - "tls_authentication": 1, - "value": "value_value", - } - ], - }, - "connection_urls": { - "apex_uri": "apex_uri_value", - "database_transforms_uri": "database_transforms_uri_value", - "graph_studio_uri": "graph_studio_uri_value", - "machine_learning_notebook_uri": "machine_learning_notebook_uri_value", - "machine_learning_user_management_uri": "machine_learning_user_management_uri_value", - "mongo_db_uri": "mongo_db_uri_value", - "ords_uri": "ords_uri_value", - "sql_dev_web_uri": "sql_dev_web_uri_value", - }, - "failed_data_recovery_duration": {"seconds": 751, "nanos": 543}, - "memory_table_gbs": 1691, - "is_local_data_guard_enabled": True, - "local_adg_auto_failover_max_data_loss_limit": 4513, - "local_standby_db": { - "lag_time_duration": {}, - "lifecycle_details": "lifecycle_details_value", - "state": 1, - "data_guard_role_changed_time": {"seconds": 751, "nanos": 543}, - "disaster_recovery_role_changed_time": {}, - }, - "memory_per_oracle_compute_unit_gbs": 3626, - "local_disaster_recovery_type": 1, - "data_safe_state": 1, - "database_management_state": 1, - "open_mode": 1, - "operations_insights_state": 1, - "peer_db_ids": ["peer_db_ids_value1", "peer_db_ids_value2"], - "permission_level": 1, - "private_endpoint": "private_endpoint_value", - "refreshable_mode": 1, - "refreshable_state": 1, - "role": 1, - "scheduled_operation_details": [ - { - "day_of_week": 1, - "start_time": { - "hours": 561, - "minutes": 773, - "seconds": 751, - "nanos": 543, - }, - "stop_time": {}, - } - ], - "sql_web_developer_url": "sql_web_developer_url_value", - "supported_clone_regions": [ - "supported_clone_regions_value1", - "supported_clone_regions_value2", - ], - "used_data_storage_size_tbs": 2752, - "oci_url": "oci_url_value", - "total_auto_backup_storage_size_gbs": 0.36100000000000004, - "next_long_term_backup_time": {}, - "data_guard_role_changed_time": {}, - "disaster_recovery_role_changed_time": {}, - "maintenance_begin_time": {}, - "maintenance_end_time": {}, - "allowlisted_ips": ["allowlisted_ips_value1", "allowlisted_ips_value2"], - "encryption_key": {"provider": 1, "kms_key": "kms_key_value"}, - "encryption_key_history_entries": [ - {"encryption_key": {}, "activation_time": {}} - ], - "service_agent_email": "service_agent_email_value", - }, - "labels": {}, - "network": "network_value", - "cidr": "cidr_value", - "odb_network": "odb_network_value", - "odb_subnet": "odb_subnet_value", - "source_config": { - "autonomous_database": "autonomous_database_value", - "automatic_backups_replication_enabled": True, - }, - "peer_autonomous_databases": [ - "peer_autonomous_databases_value1", - "peer_autonomous_databases_value2", - ], - "create_time": {}, - "disaster_recovery_supported_locations": [ - "disaster_recovery_supported_locations_value1", - "disaster_recovery_supported_locations_value2", - ], - } - # The version of a generated dependency at test runtime may differ from the version used during generation. - # Delete any fields which are not present in the current runtime dependency - # See https://github.com/googleapis/gapic-generator-python/issues/1748 - - # Determine if the message type is proto-plus or protobuf - test_field = oracledatabase.UpdateAutonomousDatabaseRequest.meta.fields[ - "autonomous_database" - ] - - def get_message_fields(field): - # Given a field which is a message (composite type), return a list with - # all the fields of the message. - # If the field is not a composite type, return an empty list. - message_fields = [] - - if hasattr(field, "message") and field.message: - is_field_type_proto_plus_type = not hasattr(field.message, "DESCRIPTOR") - - if is_field_type_proto_plus_type: - message_fields = field.message.meta.fields.values() - # Add `# pragma: NO COVER` because there may not be any `*_pb2` field types - else: # pragma: NO COVER - message_fields = field.message.DESCRIPTOR.fields - return message_fields - - runtime_nested_fields = [ - (field.name, nested_field.name) - for field in get_message_fields(test_field) - for nested_field in get_message_fields(field) - ] +def test_delete_exadb_vm_cluster_rest_bad_request( + request_type=oracledatabase.DeleteExadbVmClusterRequest, +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/exadbVmClusters/sample3" + } + request = request_type(**request_init) - subfields_not_in_runtime = [] + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.delete_exadb_vm_cluster(request) - # For each item in the sample request, create a list of sub fields which are not present at runtime - # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime - for field, value in request_init["autonomous_database"].items(): # pragma: NO COVER - result = None - is_repeated = False - # For repeated fields - if isinstance(value, list) and len(value): - is_repeated = True - result = value[0] - # For fields where the type is another message - if isinstance(value, dict): - result = value - if result and hasattr(result, "keys"): - for subfield in result.keys(): - if (field, subfield) not in runtime_nested_fields: - subfields_not_in_runtime.append( - { - "field": field, - "subfield": subfield, - "is_repeated": is_repeated, - } - ) +@pytest.mark.parametrize( + "request_type", + [ + oracledatabase.DeleteExadbVmClusterRequest, + dict, + ], +) +def test_delete_exadb_vm_cluster_rest_call_success(request_type): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) - # Remove fields from the sample request which are not present in the runtime version of the dependency - # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime - for subfield_to_delete in subfields_not_in_runtime: # pragma: NO COVER - field = subfield_to_delete.get("field") - field_repeated = subfield_to_delete.get("is_repeated") - subfield = subfield_to_delete.get("subfield") - if subfield: - if field_repeated: - for i in range(0, len(request_init["autonomous_database"][field])): - del request_init["autonomous_database"][field][i][subfield] - else: - del request_init["autonomous_database"][field][subfield] + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/exadbVmClusters/sample3" + } request = request_type(**request_init) # Mock the http request call within the method and fake a response. @@ -45275,14 +64904,14 @@ def get_message_fields(field): response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.update_autonomous_database(request) + response = client.delete_exadb_vm_cluster(request) # Establish that the response is the type that we expect. json_return_value = json_format.MessageToJson(return_value) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_update_autonomous_database_rest_interceptors(null_interceptor): +def test_delete_exadb_vm_cluster_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -45296,21 +64925,21 @@ def test_update_autonomous_database_rest_interceptors(null_interceptor): mock.patch.object(path_template, "transcode") as transcode, mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_update_autonomous_database" + transports.OracleDatabaseRestInterceptor, "post_delete_exadb_vm_cluster" ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_update_autonomous_database_with_metadata", + "post_delete_exadb_vm_cluster_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_update_autonomous_database" + transports.OracleDatabaseRestInterceptor, "pre_delete_exadb_vm_cluster" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.UpdateAutonomousDatabaseRequest.pb( - oracledatabase.UpdateAutonomousDatabaseRequest() + pb_message = oracledatabase.DeleteExadbVmClusterRequest.pb( + oracledatabase.DeleteExadbVmClusterRequest() ) transcode.return_value = { "method": "post", @@ -45325,7 +64954,7 @@ def test_update_autonomous_database_rest_interceptors(null_interceptor): return_value = json_format.MessageToJson(operations_pb2.Operation()) req.return_value.content = return_value - request = oracledatabase.UpdateAutonomousDatabaseRequest() + request = oracledatabase.DeleteExadbVmClusterRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), @@ -45334,7 +64963,7 @@ def test_update_autonomous_database_rest_interceptors(null_interceptor): post.return_value = operations_pb2.Operation() post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.update_autonomous_database( + client.delete_exadb_vm_cluster( request, metadata=[ ("key", "val"), @@ -45347,15 +64976,17 @@ def test_update_autonomous_database_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_delete_autonomous_database_rest_bad_request( - request_type=oracledatabase.DeleteAutonomousDatabaseRequest, +def test_update_exadb_vm_cluster_rest_bad_request( + request_type=oracledatabase.UpdateExadbVmClusterRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + "exadb_vm_cluster": { + "name": "projects/sample1/locations/sample2/exadbVmClusters/sample3" + } } request = request_type(**request_init) @@ -45372,25 +65003,132 @@ def test_delete_autonomous_database_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.delete_autonomous_database(request) + client.update_exadb_vm_cluster(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.DeleteAutonomousDatabaseRequest, + oracledatabase.UpdateExadbVmClusterRequest, dict, ], ) -def test_delete_autonomous_database_rest_call_success(request_type): +def test_update_exadb_vm_cluster_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + "exadb_vm_cluster": { + "name": "projects/sample1/locations/sample2/exadbVmClusters/sample3" + } + } + request_init["exadb_vm_cluster"] = { + "name": "projects/sample1/locations/sample2/exadbVmClusters/sample3", + "properties": { + "cluster_name": "cluster_name_value", + "grid_image_id": "grid_image_id_value", + "node_count": 1070, + "enabled_ecpu_count_per_node": 2826, + "additional_ecpu_count_per_node": 3160, + "vm_file_system_storage": {"size_in_gbs_per_node": 2103}, + "license_model": 1, + "exascale_db_storage_vault": "exascale_db_storage_vault_value", + "hostname_prefix": "hostname_prefix_value", + "hostname": "hostname_value", + "ssh_public_keys": ["ssh_public_keys_value1", "ssh_public_keys_value2"], + "data_collection_options": { + "is_diagnostics_events_enabled": True, + "is_health_monitoring_enabled": True, + "is_incident_logs_enabled": True, + }, + "time_zone": {"id": "id_value", "version": "version_value"}, + "lifecycle_state": 1, + "shape_attribute": 1, + "memory_size_gb": 1499, + "scan_listener_port_tcp": 2356, + "oci_uri": "oci_uri_value", + "gi_version": "gi_version_value", + }, + "gcp_oracle_zone": "gcp_oracle_zone_value", + "labels": {}, + "odb_network": "odb_network_value", + "odb_subnet": "odb_subnet_value", + "backup_odb_subnet": "backup_odb_subnet_value", + "display_name": "display_name_value", + "create_time": {"seconds": 751, "nanos": 543}, + "entitlement_id": "entitlement_id_value", } + # The version of a generated dependency at test runtime may differ from the version used during generation. + # Delete any fields which are not present in the current runtime dependency + # See https://github.com/googleapis/gapic-generator-python/issues/1748 + + # Determine if the message type is proto-plus or protobuf + test_field = oracledatabase.UpdateExadbVmClusterRequest.meta.fields[ + "exadb_vm_cluster" + ] + + def get_message_fields(field): + # Given a field which is a message (composite type), return a list with + # all the fields of the message. + # If the field is not a composite type, return an empty list. + message_fields = [] + + if hasattr(field, "message") and field.message: + is_field_type_proto_plus_type = not hasattr(field.message, "DESCRIPTOR") + + if is_field_type_proto_plus_type: + message_fields = field.message.meta.fields.values() + # Add `# pragma: NO COVER` because there may not be any `*_pb2` field types + else: # pragma: NO COVER + message_fields = field.message.DESCRIPTOR.fields + return message_fields + + runtime_nested_fields = [ + (field.name, nested_field.name) + for field in get_message_fields(test_field) + for nested_field in get_message_fields(field) + ] + + subfields_not_in_runtime = [] + + # For each item in the sample request, create a list of sub fields which are not present at runtime + # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime + for field, value in request_init["exadb_vm_cluster"].items(): # pragma: NO COVER + result = None + is_repeated = False + # For repeated fields + if isinstance(value, list) and len(value): + is_repeated = True + result = value[0] + # For fields where the type is another message + if isinstance(value, dict): + result = value + + if result and hasattr(result, "keys"): + for subfield in result.keys(): + if (field, subfield) not in runtime_nested_fields: + subfields_not_in_runtime.append( + { + "field": field, + "subfield": subfield, + "is_repeated": is_repeated, + } + ) + + # Remove fields from the sample request which are not present in the runtime version of the dependency + # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime + for subfield_to_delete in subfields_not_in_runtime: # pragma: NO COVER + field = subfield_to_delete.get("field") + field_repeated = subfield_to_delete.get("is_repeated") + subfield = subfield_to_delete.get("subfield") + if subfield: + if field_repeated: + for i in range(0, len(request_init["exadb_vm_cluster"][field])): + del request_init["exadb_vm_cluster"][field][i][subfield] + else: + del request_init["exadb_vm_cluster"][field][subfield] request = request_type(**request_init) # Mock the http request call within the method and fake a response. @@ -45405,14 +65143,14 @@ def test_delete_autonomous_database_rest_call_success(request_type): response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.delete_autonomous_database(request) + response = client.update_exadb_vm_cluster(request) # Establish that the response is the type that we expect. json_return_value = json_format.MessageToJson(return_value) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_delete_autonomous_database_rest_interceptors(null_interceptor): +def test_update_exadb_vm_cluster_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -45426,21 +65164,21 @@ def test_delete_autonomous_database_rest_interceptors(null_interceptor): mock.patch.object(path_template, "transcode") as transcode, mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_delete_autonomous_database" + transports.OracleDatabaseRestInterceptor, "post_update_exadb_vm_cluster" ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_delete_autonomous_database_with_metadata", + "post_update_exadb_vm_cluster_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_delete_autonomous_database" + transports.OracleDatabaseRestInterceptor, "pre_update_exadb_vm_cluster" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.DeleteAutonomousDatabaseRequest.pb( - oracledatabase.DeleteAutonomousDatabaseRequest() + pb_message = oracledatabase.UpdateExadbVmClusterRequest.pb( + oracledatabase.UpdateExadbVmClusterRequest() ) transcode.return_value = { "method": "post", @@ -45455,7 +65193,7 @@ def test_delete_autonomous_database_rest_interceptors(null_interceptor): return_value = json_format.MessageToJson(operations_pb2.Operation()) req.return_value.content = return_value - request = oracledatabase.DeleteAutonomousDatabaseRequest() + request = oracledatabase.UpdateExadbVmClusterRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), @@ -45464,7 +65202,7 @@ def test_delete_autonomous_database_rest_interceptors(null_interceptor): post.return_value = operations_pb2.Operation() post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.delete_autonomous_database( + client.update_exadb_vm_cluster( request, metadata=[ ("key", "val"), @@ -45477,15 +65215,15 @@ def test_delete_autonomous_database_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_restore_autonomous_database_rest_bad_request( - request_type=oracledatabase.RestoreAutonomousDatabaseRequest, +def test_remove_virtual_machine_exadb_vm_cluster_rest_bad_request( + request_type=oracledatabase.RemoveVirtualMachineExadbVmClusterRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + "name": "projects/sample1/locations/sample2/exadbVmClusters/sample3" } request = request_type(**request_init) @@ -45502,24 +65240,24 @@ def test_restore_autonomous_database_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.restore_autonomous_database(request) + client.remove_virtual_machine_exadb_vm_cluster(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.RestoreAutonomousDatabaseRequest, + oracledatabase.RemoveVirtualMachineExadbVmClusterRequest, dict, ], ) -def test_restore_autonomous_database_rest_call_success(request_type): +def test_remove_virtual_machine_exadb_vm_cluster_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + "name": "projects/sample1/locations/sample2/exadbVmClusters/sample3" } request = request_type(**request_init) @@ -45535,14 +65273,14 @@ def test_restore_autonomous_database_rest_call_success(request_type): response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.restore_autonomous_database(request) + response = client.remove_virtual_machine_exadb_vm_cluster(request) # Establish that the response is the type that we expect. json_return_value = json_format.MessageToJson(return_value) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_restore_autonomous_database_rest_interceptors(null_interceptor): +def test_remove_virtual_machine_exadb_vm_cluster_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -45556,21 +65294,23 @@ def test_restore_autonomous_database_rest_interceptors(null_interceptor): mock.patch.object(path_template, "transcode") as transcode, mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_restore_autonomous_database" + transports.OracleDatabaseRestInterceptor, + "post_remove_virtual_machine_exadb_vm_cluster", ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_restore_autonomous_database_with_metadata", + "post_remove_virtual_machine_exadb_vm_cluster_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_restore_autonomous_database" + transports.OracleDatabaseRestInterceptor, + "pre_remove_virtual_machine_exadb_vm_cluster", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.RestoreAutonomousDatabaseRequest.pb( - oracledatabase.RestoreAutonomousDatabaseRequest() + pb_message = oracledatabase.RemoveVirtualMachineExadbVmClusterRequest.pb( + oracledatabase.RemoveVirtualMachineExadbVmClusterRequest() ) transcode.return_value = { "method": "post", @@ -45585,7 +65325,7 @@ def test_restore_autonomous_database_rest_interceptors(null_interceptor): return_value = json_format.MessageToJson(operations_pb2.Operation()) req.return_value.content = return_value - request = oracledatabase.RestoreAutonomousDatabaseRequest() + request = oracledatabase.RemoveVirtualMachineExadbVmClusterRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), @@ -45594,7 +65334,7 @@ def test_restore_autonomous_database_rest_interceptors(null_interceptor): post.return_value = operations_pb2.Operation() post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.restore_autonomous_database( + client.remove_virtual_machine_exadb_vm_cluster( request, metadata=[ ("key", "val"), @@ -45607,16 +65347,14 @@ def test_restore_autonomous_database_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_generate_autonomous_database_wallet_rest_bad_request( - request_type=oracledatabase.GenerateAutonomousDatabaseWalletRequest, +def test_list_exascale_db_storage_vaults_rest_bad_request( + request_type=exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" - } + request_init = {"parent": "projects/sample1/locations/sample2"} request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -45632,32 +65370,31 @@ def test_generate_autonomous_database_wallet_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.generate_autonomous_database_wallet(request) + client.list_exascale_db_storage_vaults(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.GenerateAutonomousDatabaseWalletRequest, + exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest, dict, ], ) -def test_generate_autonomous_database_wallet_rest_call_success(request_type): +def test_list_exascale_db_storage_vaults_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" - } + request_init = {"parent": "projects/sample1/locations/sample2"} request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = oracledatabase.GenerateAutonomousDatabaseWalletResponse( - archive_content=b"archive_content_blob", + return_value = exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], ) # Wrap the value into a proper Response obj @@ -45665,22 +65402,23 @@ def test_generate_autonomous_database_wallet_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = oracledatabase.GenerateAutonomousDatabaseWalletResponse.pb( + return_value = exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse.pb( return_value ) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.generate_autonomous_database_wallet(request) + response = client.list_exascale_db_storage_vaults(request) # Establish that the response is the type that we expect. - assert isinstance(response, oracledatabase.GenerateAutonomousDatabaseWalletResponse) - assert response.archive_content == b"archive_content_blob" + assert isinstance(response, pagers.ListExascaleDbStorageVaultsPager) + assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_generate_autonomous_database_wallet_rest_interceptors(null_interceptor): +def test_list_exascale_db_storage_vaults_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -45694,22 +65432,22 @@ def test_generate_autonomous_database_wallet_rest_interceptors(null_interceptor) mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_generate_autonomous_database_wallet", + "post_list_exascale_db_storage_vaults", ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_generate_autonomous_database_wallet_with_metadata", + "post_list_exascale_db_storage_vaults_with_metadata", ) as post_with_metadata, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "pre_generate_autonomous_database_wallet", + "pre_list_exascale_db_storage_vaults", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.GenerateAutonomousDatabaseWalletRequest.pb( - oracledatabase.GenerateAutonomousDatabaseWalletRequest() + pb_message = exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest.pb( + exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest() ) transcode.return_value = { "method": "post", @@ -45721,24 +65459,28 @@ def test_generate_autonomous_database_wallet_rest_interceptors(null_interceptor) req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = oracledatabase.GenerateAutonomousDatabaseWalletResponse.to_json( - oracledatabase.GenerateAutonomousDatabaseWalletResponse() + return_value = ( + exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse.to_json( + exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse() + ) ) req.return_value.content = return_value - request = oracledatabase.GenerateAutonomousDatabaseWalletRequest() + request = exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = oracledatabase.GenerateAutonomousDatabaseWalletResponse() + post.return_value = ( + exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse() + ) post_with_metadata.return_value = ( - oracledatabase.GenerateAutonomousDatabaseWalletResponse(), + exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse(), metadata, ) - client.generate_autonomous_database_wallet( + client.list_exascale_db_storage_vaults( request, metadata=[ ("key", "val"), @@ -45751,14 +65493,16 @@ def test_generate_autonomous_database_wallet_rest_interceptors(null_interceptor) post_with_metadata.assert_called_once() -def test_list_autonomous_db_versions_rest_bad_request( - request_type=oracledatabase.ListAutonomousDbVersionsRequest, +def test_get_exascale_db_storage_vault_rest_bad_request( + request_type=exascale_db_storage_vault.GetExascaleDbStorageVaultRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2"} + request_init = { + "name": "projects/sample1/locations/sample2/exascaleDbStorageVaults/sample3" + } request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -45774,30 +65518,35 @@ def test_list_autonomous_db_versions_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_autonomous_db_versions(request) + client.get_exascale_db_storage_vault(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.ListAutonomousDbVersionsRequest, + exascale_db_storage_vault.GetExascaleDbStorageVaultRequest, dict, ], ) -def test_list_autonomous_db_versions_rest_call_success(request_type): +def test_get_exascale_db_storage_vault_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2"} + request_init = { + "name": "projects/sample1/locations/sample2/exascaleDbStorageVaults/sample3" + } request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListAutonomousDbVersionsResponse( - next_page_token="next_page_token_value", + return_value = exascale_db_storage_vault.ExascaleDbStorageVault( + name="name_value", + display_name="display_name_value", + gcp_oracle_zone="gcp_oracle_zone_value", + entitlement_id="entitlement_id_value", ) # Wrap the value into a proper Response obj @@ -45805,20 +65554,23 @@ def test_list_autonomous_db_versions_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = oracledatabase.ListAutonomousDbVersionsResponse.pb(return_value) + return_value = exascale_db_storage_vault.ExascaleDbStorageVault.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_autonomous_db_versions(request) + response = client.get_exascale_db_storage_vault(request) # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListAutonomousDbVersionsPager) - assert response.next_page_token == "next_page_token_value" + assert isinstance(response, exascale_db_storage_vault.ExascaleDbStorageVault) + assert response.name == "name_value" + assert response.display_name == "display_name_value" + assert response.gcp_oracle_zone == "gcp_oracle_zone_value" + assert response.entitlement_id == "entitlement_id_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_autonomous_db_versions_rest_interceptors(null_interceptor): +def test_get_exascale_db_storage_vault_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -45831,21 +65583,23 @@ def test_list_autonomous_db_versions_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_list_autonomous_db_versions" + transports.OracleDatabaseRestInterceptor, + "post_get_exascale_db_storage_vault", ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_list_autonomous_db_versions_with_metadata", + "post_get_exascale_db_storage_vault_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_list_autonomous_db_versions" + transports.OracleDatabaseRestInterceptor, + "pre_get_exascale_db_storage_vault", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.ListAutonomousDbVersionsRequest.pb( - oracledatabase.ListAutonomousDbVersionsRequest() + pb_message = exascale_db_storage_vault.GetExascaleDbStorageVaultRequest.pb( + exascale_db_storage_vault.GetExascaleDbStorageVaultRequest() ) transcode.return_value = { "method": "post", @@ -45857,24 +65611,24 @@ def test_list_autonomous_db_versions_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = oracledatabase.ListAutonomousDbVersionsResponse.to_json( - oracledatabase.ListAutonomousDbVersionsResponse() + return_value = exascale_db_storage_vault.ExascaleDbStorageVault.to_json( + exascale_db_storage_vault.ExascaleDbStorageVault() ) req.return_value.content = return_value - request = oracledatabase.ListAutonomousDbVersionsRequest() + request = exascale_db_storage_vault.GetExascaleDbStorageVaultRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = oracledatabase.ListAutonomousDbVersionsResponse() + post.return_value = exascale_db_storage_vault.ExascaleDbStorageVault() post_with_metadata.return_value = ( - oracledatabase.ListAutonomousDbVersionsResponse(), + exascale_db_storage_vault.ExascaleDbStorageVault(), metadata, ) - client.list_autonomous_db_versions( + client.get_exascale_db_storage_vault( request, metadata=[ ("key", "val"), @@ -45887,8 +65641,8 @@ def test_list_autonomous_db_versions_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_list_autonomous_database_character_sets_rest_bad_request( - request_type=oracledatabase.ListAutonomousDatabaseCharacterSetsRequest, +def test_create_exascale_db_storage_vault_rest_bad_request( + request_type=gco_exascale_db_storage_vault.CreateExascaleDbStorageVaultRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" @@ -45910,53 +65664,144 @@ def test_list_autonomous_database_character_sets_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_autonomous_database_character_sets(request) + client.create_exascale_db_storage_vault(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.ListAutonomousDatabaseCharacterSetsRequest, + gco_exascale_db_storage_vault.CreateExascaleDbStorageVaultRequest, dict, ], ) -def test_list_autonomous_database_character_sets_rest_call_success(request_type): +def test_create_exascale_db_storage_vault_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = {"parent": "projects/sample1/locations/sample2"} + request_init["exascale_db_storage_vault"] = { + "name": "name_value", + "display_name": "display_name_value", + "gcp_oracle_zone": "gcp_oracle_zone_value", + "properties": { + "ocid": "ocid_value", + "time_zone": {"id": "id_value", "version": "version_value"}, + "exascale_db_storage_details": { + "available_size_gbs": 1878, + "total_size_gbs": 1497, + }, + "state": 1, + "description": "description_value", + "vm_cluster_ids": ["vm_cluster_ids_value1", "vm_cluster_ids_value2"], + "vm_cluster_count": 1740, + "additional_flash_cache_percent": 3113, + "oci_uri": "oci_uri_value", + "attached_shape_attributes": [1], + "available_shape_attributes": [1], + }, + "create_time": {"seconds": 751, "nanos": 543}, + "entitlement_id": "entitlement_id_value", + "labels": {}, + } + # The version of a generated dependency at test runtime may differ from the version used during generation. + # Delete any fields which are not present in the current runtime dependency + # See https://github.com/googleapis/gapic-generator-python/issues/1748 + + # Determine if the message type is proto-plus or protobuf + test_field = ( + gco_exascale_db_storage_vault.CreateExascaleDbStorageVaultRequest.meta.fields[ + "exascale_db_storage_vault" + ] + ) + + def get_message_fields(field): + # Given a field which is a message (composite type), return a list with + # all the fields of the message. + # If the field is not a composite type, return an empty list. + message_fields = [] + + if hasattr(field, "message") and field.message: + is_field_type_proto_plus_type = not hasattr(field.message, "DESCRIPTOR") + + if is_field_type_proto_plus_type: + message_fields = field.message.meta.fields.values() + # Add `# pragma: NO COVER` because there may not be any `*_pb2` field types + else: # pragma: NO COVER + message_fields = field.message.DESCRIPTOR.fields + return message_fields + + runtime_nested_fields = [ + (field.name, nested_field.name) + for field in get_message_fields(test_field) + for nested_field in get_message_fields(field) + ] + + subfields_not_in_runtime = [] + + # For each item in the sample request, create a list of sub fields which are not present at runtime + # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime + for field, value in request_init[ + "exascale_db_storage_vault" + ].items(): # pragma: NO COVER + result = None + is_repeated = False + # For repeated fields + if isinstance(value, list) and len(value): + is_repeated = True + result = value[0] + # For fields where the type is another message + if isinstance(value, dict): + result = value + + if result and hasattr(result, "keys"): + for subfield in result.keys(): + if (field, subfield) not in runtime_nested_fields: + subfields_not_in_runtime.append( + { + "field": field, + "subfield": subfield, + "is_repeated": is_repeated, + } + ) + + # Remove fields from the sample request which are not present in the runtime version of the dependency + # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime + for subfield_to_delete in subfields_not_in_runtime: # pragma: NO COVER + field = subfield_to_delete.get("field") + field_repeated = subfield_to_delete.get("is_repeated") + subfield = subfield_to_delete.get("subfield") + if subfield: + if field_repeated: + for i in range( + 0, len(request_init["exascale_db_storage_vault"][field]) + ): + del request_init["exascale_db_storage_vault"][field][i][subfield] + else: + del request_init["exascale_db_storage_vault"][field][subfield] request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListAutonomousDatabaseCharacterSetsResponse( - next_page_token="next_page_token_value", - ) + return_value = operations_pb2.Operation(name="operations/spam") # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = oracledatabase.ListAutonomousDatabaseCharacterSetsResponse.pb( - return_value - ) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_autonomous_database_character_sets(request) + response = client.create_exascale_db_storage_vault(request) # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListAutonomousDatabaseCharacterSetsPager) - assert response.next_page_token == "next_page_token_value" + json_return_value = json_format.MessageToJson(return_value) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_autonomous_database_character_sets_rest_interceptors(null_interceptor): +def test_create_exascale_db_storage_vault_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -45968,24 +65813,27 @@ def test_list_autonomous_database_character_sets_rest_interceptors(null_intercep with ( mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_list_autonomous_database_character_sets", + "post_create_exascale_db_storage_vault", ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_list_autonomous_database_character_sets_with_metadata", + "post_create_exascale_db_storage_vault_with_metadata", ) as post_with_metadata, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "pre_list_autonomous_database_character_sets", + "pre_create_exascale_db_storage_vault", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.ListAutonomousDatabaseCharacterSetsRequest.pb( - oracledatabase.ListAutonomousDatabaseCharacterSetsRequest() + pb_message = ( + gco_exascale_db_storage_vault.CreateExascaleDbStorageVaultRequest.pb( + gco_exascale_db_storage_vault.CreateExascaleDbStorageVaultRequest() + ) ) transcode.return_value = { "method": "post", @@ -45997,26 +65845,19 @@ def test_list_autonomous_database_character_sets_rest_interceptors(null_intercep req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = ( - oracledatabase.ListAutonomousDatabaseCharacterSetsResponse.to_json( - oracledatabase.ListAutonomousDatabaseCharacterSetsResponse() - ) - ) + return_value = json_format.MessageToJson(operations_pb2.Operation()) req.return_value.content = return_value - request = oracledatabase.ListAutonomousDatabaseCharacterSetsRequest() + request = gco_exascale_db_storage_vault.CreateExascaleDbStorageVaultRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = oracledatabase.ListAutonomousDatabaseCharacterSetsResponse() - post_with_metadata.return_value = ( - oracledatabase.ListAutonomousDatabaseCharacterSetsResponse(), - metadata, - ) + post.return_value = operations_pb2.Operation() + post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.list_autonomous_database_character_sets( + client.create_exascale_db_storage_vault( request, metadata=[ ("key", "val"), @@ -46029,14 +65870,16 @@ def test_list_autonomous_database_character_sets_rest_interceptors(null_intercep post_with_metadata.assert_called_once() -def test_list_autonomous_database_backups_rest_bad_request( - request_type=oracledatabase.ListAutonomousDatabaseBackupsRequest, +def test_delete_exascale_db_storage_vault_rest_bad_request( + request_type=exascale_db_storage_vault.DeleteExascaleDbStorageVaultRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2"} + request_init = { + "name": "projects/sample1/locations/sample2/exascaleDbStorageVaults/sample3" + } request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -46052,53 +65895,47 @@ def test_list_autonomous_database_backups_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_autonomous_database_backups(request) + client.delete_exascale_db_storage_vault(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.ListAutonomousDatabaseBackupsRequest, + exascale_db_storage_vault.DeleteExascaleDbStorageVaultRequest, dict, ], ) -def test_list_autonomous_database_backups_rest_call_success(request_type): +def test_delete_exascale_db_storage_vault_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2"} + request_init = { + "name": "projects/sample1/locations/sample2/exascaleDbStorageVaults/sample3" + } request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListAutonomousDatabaseBackupsResponse( - next_page_token="next_page_token_value", - ) + return_value = operations_pb2.Operation(name="operations/spam") # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = oracledatabase.ListAutonomousDatabaseBackupsResponse.pb( - return_value - ) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_autonomous_database_backups(request) + response = client.delete_exascale_db_storage_vault(request) # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListAutonomousDatabaseBackupsPager) - assert response.next_page_token == "next_page_token_value" + json_return_value = json_format.MessageToJson(return_value) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_autonomous_database_backups_rest_interceptors(null_interceptor): +def test_delete_exascale_db_storage_vault_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -46110,24 +65947,25 @@ def test_list_autonomous_database_backups_rest_interceptors(null_interceptor): with ( mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_list_autonomous_database_backups", + "post_delete_exascale_db_storage_vault", ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_list_autonomous_database_backups_with_metadata", + "post_delete_exascale_db_storage_vault_with_metadata", ) as post_with_metadata, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "pre_list_autonomous_database_backups", + "pre_delete_exascale_db_storage_vault", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.ListAutonomousDatabaseBackupsRequest.pb( - oracledatabase.ListAutonomousDatabaseBackupsRequest() + pb_message = exascale_db_storage_vault.DeleteExascaleDbStorageVaultRequest.pb( + exascale_db_storage_vault.DeleteExascaleDbStorageVaultRequest() ) transcode.return_value = { "method": "post", @@ -46139,24 +65977,19 @@ def test_list_autonomous_database_backups_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = oracledatabase.ListAutonomousDatabaseBackupsResponse.to_json( - oracledatabase.ListAutonomousDatabaseBackupsResponse() - ) + return_value = json_format.MessageToJson(operations_pb2.Operation()) req.return_value.content = return_value - request = oracledatabase.ListAutonomousDatabaseBackupsRequest() + request = exascale_db_storage_vault.DeleteExascaleDbStorageVaultRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = oracledatabase.ListAutonomousDatabaseBackupsResponse() - post_with_metadata.return_value = ( - oracledatabase.ListAutonomousDatabaseBackupsResponse(), - metadata, - ) + post.return_value = operations_pb2.Operation() + post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.list_autonomous_database_backups( + client.delete_exascale_db_storage_vault( request, metadata=[ ("key", "val"), @@ -46169,16 +66002,14 @@ def test_list_autonomous_database_backups_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_stop_autonomous_database_rest_bad_request( - request_type=oracledatabase.StopAutonomousDatabaseRequest, +def test_list_db_system_initial_storage_sizes_rest_bad_request( + request_type=db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" - } + request_init = {"parent": "projects/sample1/locations/sample2"} request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -46194,47 +66025,57 @@ def test_stop_autonomous_database_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.stop_autonomous_database(request) + client.list_db_system_initial_storage_sizes(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.StopAutonomousDatabaseRequest, + db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest, dict, ], ) -def test_stop_autonomous_database_rest_call_success(request_type): +def test_list_db_system_initial_storage_sizes_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" - } + request_init = {"parent": "projects/sample1/locations/sample2"} request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = ( + db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse( + next_page_token="next_page_token_value", + ) + ) # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = ( + db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse.pb( + return_value + ) + ) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.stop_autonomous_database(request) + response = client.list_db_system_initial_storage_sizes(request) # Establish that the response is the type that we expect. - json_return_value = json_format.MessageToJson(return_value) + assert isinstance(response, pagers.ListDbSystemInitialStorageSizesPager) + assert response.next_page_token == "next_page_token_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_stop_autonomous_database_rest_interceptors(null_interceptor): +def test_list_db_system_initial_storage_sizes_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -46246,23 +66087,26 @@ def test_stop_autonomous_database_rest_interceptors(null_interceptor): with ( mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, - mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_stop_autonomous_database" + transports.OracleDatabaseRestInterceptor, + "post_list_db_system_initial_storage_sizes", ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_stop_autonomous_database_with_metadata", + "post_list_db_system_initial_storage_sizes_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_stop_autonomous_database" + transports.OracleDatabaseRestInterceptor, + "pre_list_db_system_initial_storage_sizes", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.StopAutonomousDatabaseRequest.pb( - oracledatabase.StopAutonomousDatabaseRequest() + pb_message = ( + db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest.pb( + db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest() + ) ) transcode.return_value = { "method": "post", @@ -46274,19 +66118,28 @@ def test_stop_autonomous_database_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = json_format.MessageToJson(operations_pb2.Operation()) + return_value = db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse.to_json( + db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse() + ) req.return_value.content = return_value - request = oracledatabase.StopAutonomousDatabaseRequest() + request = ( + db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest() + ) metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = operations_pb2.Operation() - post_with_metadata.return_value = operations_pb2.Operation(), metadata + post.return_value = ( + db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse() + ) + post_with_metadata.return_value = ( + db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse(), + metadata, + ) - client.stop_autonomous_database( + client.list_db_system_initial_storage_sizes( request, metadata=[ ("key", "val"), @@ -46299,16 +66152,12 @@ def test_stop_autonomous_database_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_start_autonomous_database_rest_bad_request( - request_type=oracledatabase.StartAutonomousDatabaseRequest, -): +def test_list_databases_rest_bad_request(request_type=database.ListDatabasesRequest): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" - } + request_init = {"parent": "projects/sample1/locations/sample2"} request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -46324,47 +66173,51 @@ def test_start_autonomous_database_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.start_autonomous_database(request) + client.list_databases(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.StartAutonomousDatabaseRequest, + database.ListDatabasesRequest, dict, ], ) -def test_start_autonomous_database_rest_call_success(request_type): +def test_list_databases_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" - } + request_init = {"parent": "projects/sample1/locations/sample2"} request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = database.ListDatabasesResponse( + next_page_token="next_page_token_value", + ) # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = database.ListDatabasesResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.start_autonomous_database(request) + response = client.list_databases(request) # Establish that the response is the type that we expect. - json_return_value = json_format.MessageToJson(return_value) + assert isinstance(response, pagers.ListDatabasesPager) + assert response.next_page_token == "next_page_token_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_start_autonomous_database_rest_interceptors(null_interceptor): +def test_list_databases_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -46376,24 +66229,21 @@ def test_start_autonomous_database_rest_interceptors(null_interceptor): with ( mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, - mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_start_autonomous_database" + transports.OracleDatabaseRestInterceptor, "post_list_databases" ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_start_autonomous_database_with_metadata", + "post_list_databases_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_start_autonomous_database" + transports.OracleDatabaseRestInterceptor, "pre_list_databases" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.StartAutonomousDatabaseRequest.pb( - oracledatabase.StartAutonomousDatabaseRequest() - ) + pb_message = database.ListDatabasesRequest.pb(database.ListDatabasesRequest()) transcode.return_value = { "method": "post", "uri": "my_uri", @@ -46404,19 +66254,21 @@ def test_start_autonomous_database_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = json_format.MessageToJson(operations_pb2.Operation()) + return_value = database.ListDatabasesResponse.to_json( + database.ListDatabasesResponse() + ) req.return_value.content = return_value - request = oracledatabase.StartAutonomousDatabaseRequest() + request = database.ListDatabasesRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = operations_pb2.Operation() - post_with_metadata.return_value = operations_pb2.Operation(), metadata + post.return_value = database.ListDatabasesResponse() + post_with_metadata.return_value = database.ListDatabasesResponse(), metadata - client.start_autonomous_database( + client.list_databases( request, metadata=[ ("key", "val"), @@ -46429,16 +66281,12 @@ def test_start_autonomous_database_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_restart_autonomous_database_rest_bad_request( - request_type=oracledatabase.RestartAutonomousDatabaseRequest, -): +def test_get_database_rest_bad_request(request_type=database.GetDatabaseRequest): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" - } + request_init = {"name": "projects/sample1/locations/sample2/databases/sample3"} request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -46454,47 +66302,89 @@ def test_restart_autonomous_database_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.restart_autonomous_database(request) + client.get_database(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.RestartAutonomousDatabaseRequest, + database.GetDatabaseRequest, dict, ], ) -def test_restart_autonomous_database_rest_call_success(request_type): +def test_get_database_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" - } + request_init = {"name": "projects/sample1/locations/sample2/databases/sample3"} request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = database.Database( + name="name_value", + db_name="db_name_value", + db_unique_name="db_unique_name_value", + admin_password="admin_password_value", + admin_password_secret_version="admin_password_secret_version_value", + tde_wallet_password="tde_wallet_password_value", + tde_wallet_password_secret_version="tde_wallet_password_secret_version_value", + character_set="character_set_value", + ncharacter_set="ncharacter_set_value", + oci_url="oci_url_value", + database_id="database_id_value", + db_home_name="db_home_name_value", + gcp_oracle_zone="gcp_oracle_zone_value", + ops_insights_status=database.Database.OperationsInsightsStatus.ENABLING, + pluggable_database_id="pluggable_database_id_value", + pluggable_database_name="pluggable_database_name_value", + ) # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = database.Database.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.restart_autonomous_database(request) + response = client.get_database(request) # Establish that the response is the type that we expect. - json_return_value = json_format.MessageToJson(return_value) + assert isinstance(response, database.Database) + assert response.name == "name_value" + assert response.db_name == "db_name_value" + assert response.db_unique_name == "db_unique_name_value" + assert response.admin_password == "admin_password_value" + assert ( + response.admin_password_secret_version == "admin_password_secret_version_value" + ) + assert response.tde_wallet_password == "tde_wallet_password_value" + assert ( + response.tde_wallet_password_secret_version + == "tde_wallet_password_secret_version_value" + ) + assert response.character_set == "character_set_value" + assert response.ncharacter_set == "ncharacter_set_value" + assert response.oci_url == "oci_url_value" + assert response.database_id == "database_id_value" + assert response.db_home_name == "db_home_name_value" + assert response.gcp_oracle_zone == "gcp_oracle_zone_value" + assert ( + response.ops_insights_status + == database.Database.OperationsInsightsStatus.ENABLING + ) + assert response.pluggable_database_id == "pluggable_database_id_value" + assert response.pluggable_database_name == "pluggable_database_name_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_restart_autonomous_database_rest_interceptors(null_interceptor): +def test_get_database_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -46506,24 +66396,20 @@ def test_restart_autonomous_database_rest_interceptors(null_interceptor): with ( mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, - mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_restart_autonomous_database" + transports.OracleDatabaseRestInterceptor, "post_get_database" ) as post, mock.patch.object( - transports.OracleDatabaseRestInterceptor, - "post_restart_autonomous_database_with_metadata", + transports.OracleDatabaseRestInterceptor, "post_get_database_with_metadata" ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_restart_autonomous_database" + transports.OracleDatabaseRestInterceptor, "pre_get_database" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.RestartAutonomousDatabaseRequest.pb( - oracledatabase.RestartAutonomousDatabaseRequest() - ) + pb_message = database.GetDatabaseRequest.pb(database.GetDatabaseRequest()) transcode.return_value = { "method": "post", "uri": "my_uri", @@ -46534,19 +66420,19 @@ def test_restart_autonomous_database_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = json_format.MessageToJson(operations_pb2.Operation()) + return_value = database.Database.to_json(database.Database()) req.return_value.content = return_value - request = oracledatabase.RestartAutonomousDatabaseRequest() + request = database.GetDatabaseRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = operations_pb2.Operation() - post_with_metadata.return_value = operations_pb2.Operation(), metadata + post.return_value = database.Database() + post_with_metadata.return_value = database.Database(), metadata - client.restart_autonomous_database( + client.get_database( request, metadata=[ ("key", "val"), @@ -46559,16 +66445,14 @@ def test_restart_autonomous_database_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_switchover_autonomous_database_rest_bad_request( - request_type=oracledatabase.SwitchoverAutonomousDatabaseRequest, +def test_list_pluggable_databases_rest_bad_request( + request_type=pluggable_database.ListPluggableDatabasesRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" - } + request_init = {"parent": "projects/sample1/locations/sample2"} request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -46584,47 +66468,53 @@ def test_switchover_autonomous_database_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.switchover_autonomous_database(request) + client.list_pluggable_databases(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.SwitchoverAutonomousDatabaseRequest, + pluggable_database.ListPluggableDatabasesRequest, dict, ], ) -def test_switchover_autonomous_database_rest_call_success(request_type): +def test_list_pluggable_databases_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" - } + request_init = {"parent": "projects/sample1/locations/sample2"} request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = pluggable_database.ListPluggableDatabasesResponse( + next_page_token="next_page_token_value", + ) # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = pluggable_database.ListPluggableDatabasesResponse.pb( + return_value + ) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.switchover_autonomous_database(request) + response = client.list_pluggable_databases(request) # Establish that the response is the type that we expect. - json_return_value = json_format.MessageToJson(return_value) + assert isinstance(response, pagers.ListPluggableDatabasesPager) + assert response.next_page_token == "next_page_token_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_switchover_autonomous_database_rest_interceptors(null_interceptor): +def test_list_pluggable_databases_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -46636,25 +66526,22 @@ def test_switchover_autonomous_database_rest_interceptors(null_interceptor): with ( mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, - mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.OracleDatabaseRestInterceptor, - "post_switchover_autonomous_database", + transports.OracleDatabaseRestInterceptor, "post_list_pluggable_databases" ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_switchover_autonomous_database_with_metadata", + "post_list_pluggable_databases_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, - "pre_switchover_autonomous_database", + transports.OracleDatabaseRestInterceptor, "pre_list_pluggable_databases" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.SwitchoverAutonomousDatabaseRequest.pb( - oracledatabase.SwitchoverAutonomousDatabaseRequest() + pb_message = pluggable_database.ListPluggableDatabasesRequest.pb( + pluggable_database.ListPluggableDatabasesRequest() ) transcode.return_value = { "method": "post", @@ -46666,19 +66553,24 @@ def test_switchover_autonomous_database_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = json_format.MessageToJson(operations_pb2.Operation()) + return_value = pluggable_database.ListPluggableDatabasesResponse.to_json( + pluggable_database.ListPluggableDatabasesResponse() + ) req.return_value.content = return_value - request = oracledatabase.SwitchoverAutonomousDatabaseRequest() + request = pluggable_database.ListPluggableDatabasesRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = operations_pb2.Operation() - post_with_metadata.return_value = operations_pb2.Operation(), metadata + post.return_value = pluggable_database.ListPluggableDatabasesResponse() + post_with_metadata.return_value = ( + pluggable_database.ListPluggableDatabasesResponse(), + metadata, + ) - client.switchover_autonomous_database( + client.list_pluggable_databases( request, metadata=[ ("key", "val"), @@ -46691,15 +66583,15 @@ def test_switchover_autonomous_database_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_failover_autonomous_database_rest_bad_request( - request_type=oracledatabase.FailoverAutonomousDatabaseRequest, +def test_get_pluggable_database_rest_bad_request( + request_type=pluggable_database.GetPluggableDatabaseRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + "name": "projects/sample1/locations/sample2/pluggableDatabases/sample3" } request = request_type(**request_init) @@ -46716,47 +66608,55 @@ def test_failover_autonomous_database_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.failover_autonomous_database(request) + client.get_pluggable_database(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.FailoverAutonomousDatabaseRequest, + pluggable_database.GetPluggableDatabaseRequest, dict, ], ) -def test_failover_autonomous_database_rest_call_success(request_type): +def test_get_pluggable_database_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/autonomousDatabases/sample3" + "name": "projects/sample1/locations/sample2/pluggableDatabases/sample3" } request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = pluggable_database.PluggableDatabase( + name="name_value", + oci_url="oci_url_value", + ) # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = pluggable_database.PluggableDatabase.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.failover_autonomous_database(request) + response = client.get_pluggable_database(request) # Establish that the response is the type that we expect. - json_return_value = json_format.MessageToJson(return_value) + assert isinstance(response, pluggable_database.PluggableDatabase) + assert response.name == "name_value" + assert response.oci_url == "oci_url_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_failover_autonomous_database_rest_interceptors(null_interceptor): +def test_get_pluggable_database_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -46768,24 +66668,22 @@ def test_failover_autonomous_database_rest_interceptors(null_interceptor): with ( mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, - mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.OracleDatabaseRestInterceptor, - "post_failover_autonomous_database", + transports.OracleDatabaseRestInterceptor, "post_get_pluggable_database" ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_failover_autonomous_database_with_metadata", + "post_get_pluggable_database_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_failover_autonomous_database" + transports.OracleDatabaseRestInterceptor, "pre_get_pluggable_database" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.FailoverAutonomousDatabaseRequest.pb( - oracledatabase.FailoverAutonomousDatabaseRequest() + pb_message = pluggable_database.GetPluggableDatabaseRequest.pb( + pluggable_database.GetPluggableDatabaseRequest() ) transcode.return_value = { "method": "post", @@ -46797,19 +66695,24 @@ def test_failover_autonomous_database_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = json_format.MessageToJson(operations_pb2.Operation()) + return_value = pluggable_database.PluggableDatabase.to_json( + pluggable_database.PluggableDatabase() + ) req.return_value.content = return_value - request = oracledatabase.FailoverAutonomousDatabaseRequest() + request = pluggable_database.GetPluggableDatabaseRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = operations_pb2.Operation() - post_with_metadata.return_value = operations_pb2.Operation(), metadata + post.return_value = pluggable_database.PluggableDatabase() + post_with_metadata.return_value = ( + pluggable_database.PluggableDatabase(), + metadata, + ) - client.failover_autonomous_database( + client.get_pluggable_database( request, metadata=[ ("key", "val"), @@ -46822,9 +66725,7 @@ def test_failover_autonomous_database_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_list_odb_networks_rest_bad_request( - request_type=odb_network.ListOdbNetworksRequest, -): +def test_list_db_systems_rest_bad_request(request_type=db_system.ListDbSystemsRequest): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) @@ -46845,17 +66746,17 @@ def test_list_odb_networks_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_odb_networks(request) + client.list_db_systems(request) @pytest.mark.parametrize( "request_type", [ - odb_network.ListOdbNetworksRequest, + db_system.ListDbSystemsRequest, dict, ], ) -def test_list_odb_networks_rest_call_success(request_type): +def test_list_db_systems_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) @@ -46867,7 +66768,7 @@ def test_list_odb_networks_rest_call_success(request_type): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = odb_network.ListOdbNetworksResponse( + return_value = db_system.ListDbSystemsResponse( next_page_token="next_page_token_value", unreachable=["unreachable_value"], ) @@ -46877,21 +66778,21 @@ def test_list_odb_networks_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = odb_network.ListOdbNetworksResponse.pb(return_value) + return_value = db_system.ListDbSystemsResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_odb_networks(request) + response = client.list_db_systems(request) # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListOdbNetworksPager) + assert isinstance(response, pagers.ListDbSystemsPager) assert response.next_page_token == "next_page_token_value" assert response.unreachable == ["unreachable_value"] @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_odb_networks_rest_interceptors(null_interceptor): +def test_list_db_systems_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -46904,22 +66805,20 @@ def test_list_odb_networks_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_list_odb_networks" + transports.OracleDatabaseRestInterceptor, "post_list_db_systems" ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_list_odb_networks_with_metadata", + "post_list_db_systems_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_list_odb_networks" + transports.OracleDatabaseRestInterceptor, "pre_list_db_systems" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = odb_network.ListOdbNetworksRequest.pb( - odb_network.ListOdbNetworksRequest() - ) + pb_message = db_system.ListDbSystemsRequest.pb(db_system.ListDbSystemsRequest()) transcode.return_value = { "method": "post", "uri": "my_uri", @@ -46930,24 +66829,21 @@ def test_list_odb_networks_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = odb_network.ListOdbNetworksResponse.to_json( - odb_network.ListOdbNetworksResponse() + return_value = db_system.ListDbSystemsResponse.to_json( + db_system.ListDbSystemsResponse() ) req.return_value.content = return_value - request = odb_network.ListOdbNetworksRequest() + request = db_system.ListDbSystemsRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = odb_network.ListOdbNetworksResponse() - post_with_metadata.return_value = ( - odb_network.ListOdbNetworksResponse(), - metadata, - ) + post.return_value = db_system.ListDbSystemsResponse() + post_with_metadata.return_value = db_system.ListDbSystemsResponse(), metadata - client.list_odb_networks( + client.list_db_systems( request, metadata=[ ("key", "val"), @@ -46960,14 +66856,12 @@ def test_list_odb_networks_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_get_odb_network_rest_bad_request( - request_type=odb_network.GetOdbNetworkRequest, -): +def test_get_db_system_rest_bad_request(request_type=db_system.GetDbSystemRequest): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"name": "projects/sample1/locations/sample2/odbNetworks/sample3"} + request_init = {"name": "projects/sample1/locations/sample2/dbSystems/sample3"} request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -46983,34 +66877,36 @@ def test_get_odb_network_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_odb_network(request) + client.get_db_system(request) @pytest.mark.parametrize( "request_type", [ - odb_network.GetOdbNetworkRequest, + db_system.GetDbSystemRequest, dict, ], ) -def test_get_odb_network_rest_call_success(request_type): +def test_get_db_system_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"name": "projects/sample1/locations/sample2/odbNetworks/sample3"} + request_init = {"name": "projects/sample1/locations/sample2/dbSystems/sample3"} request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = odb_network.OdbNetwork( + return_value = db_system.DbSystem( name="name_value", - network="network_value", - state=odb_network.OdbNetwork.State.PROVISIONING, - entitlement_id="entitlement_id_value", gcp_oracle_zone="gcp_oracle_zone_value", + odb_network="odb_network_value", + odb_subnet="odb_subnet_value", + entitlement_id="entitlement_id_value", + display_name="display_name_value", + oci_url="oci_url_value", ) # Wrap the value into a proper Response obj @@ -47018,24 +66914,26 @@ def test_get_odb_network_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = odb_network.OdbNetwork.pb(return_value) + return_value = db_system.DbSystem.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_odb_network(request) + response = client.get_db_system(request) # Establish that the response is the type that we expect. - assert isinstance(response, odb_network.OdbNetwork) + assert isinstance(response, db_system.DbSystem) assert response.name == "name_value" - assert response.network == "network_value" - assert response.state == odb_network.OdbNetwork.State.PROVISIONING - assert response.entitlement_id == "entitlement_id_value" assert response.gcp_oracle_zone == "gcp_oracle_zone_value" + assert response.odb_network == "odb_network_value" + assert response.odb_subnet == "odb_subnet_value" + assert response.entitlement_id == "entitlement_id_value" + assert response.display_name == "display_name_value" + assert response.oci_url == "oci_url_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_get_odb_network_rest_interceptors(null_interceptor): +def test_get_db_system_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -47048,22 +66946,19 @@ def test_get_odb_network_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_get_odb_network" + transports.OracleDatabaseRestInterceptor, "post_get_db_system" ) as post, mock.patch.object( - transports.OracleDatabaseRestInterceptor, - "post_get_odb_network_with_metadata", + transports.OracleDatabaseRestInterceptor, "post_get_db_system_with_metadata" ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_get_odb_network" + transports.OracleDatabaseRestInterceptor, "pre_get_db_system" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = odb_network.GetOdbNetworkRequest.pb( - odb_network.GetOdbNetworkRequest() - ) + pb_message = db_system.GetDbSystemRequest.pb(db_system.GetDbSystemRequest()) transcode.return_value = { "method": "post", "uri": "my_uri", @@ -47074,19 +66969,19 @@ def test_get_odb_network_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = odb_network.OdbNetwork.to_json(odb_network.OdbNetwork()) + return_value = db_system.DbSystem.to_json(db_system.DbSystem()) req.return_value.content = return_value - request = odb_network.GetOdbNetworkRequest() + request = db_system.GetDbSystemRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = odb_network.OdbNetwork() - post_with_metadata.return_value = odb_network.OdbNetwork(), metadata + post.return_value = db_system.DbSystem() + post_with_metadata.return_value = db_system.DbSystem(), metadata - client.get_odb_network( + client.get_db_system( request, metadata=[ ("key", "val"), @@ -47099,8 +66994,8 @@ def test_get_odb_network_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_create_odb_network_rest_bad_request( - request_type=gco_odb_network.CreateOdbNetworkRequest, +def test_create_db_system_rest_bad_request( + request_type=gco_db_system.CreateDbSystemRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" @@ -47122,38 +67017,106 @@ def test_create_odb_network_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.create_odb_network(request) + client.create_db_system(request) @pytest.mark.parametrize( "request_type", [ - gco_odb_network.CreateOdbNetworkRequest, + gco_db_system.CreateDbSystemRequest, dict, ], ) -def test_create_odb_network_rest_call_success(request_type): +def test_create_db_system_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = {"parent": "projects/sample1/locations/sample2"} - request_init["odb_network"] = { + request_init["db_system"] = { "name": "name_value", - "network": "network_value", + "properties": { + "shape": "shape_value", + "compute_count": 1413, + "initial_data_storage_size_gb": 2937, + "database_edition": 1, + "license_model": 1, + "ssh_public_keys": ["ssh_public_keys_value1", "ssh_public_keys_value2"], + "hostname_prefix": "hostname_prefix_value", + "hostname": "hostname_value", + "private_ip": "private_ip_value", + "data_collection_options": { + "is_diagnostics_events_enabled": True, + "is_incident_logs_enabled": True, + }, + "time_zone": {"id": "id_value", "version": "version_value"}, + "lifecycle_state": 1, + "db_home": { + "display_name": "display_name_value", + "db_version": "db_version_value", + "database": { + "name": "name_value", + "db_name": "db_name_value", + "db_unique_name": "db_unique_name_value", + "admin_password": "admin_password_value", + "admin_password_secret_version": "admin_password_secret_version_value", + "tde_wallet_password": "tde_wallet_password_value", + "tde_wallet_password_secret_version": "tde_wallet_password_secret_version_value", + "character_set": "character_set_value", + "ncharacter_set": "ncharacter_set_value", + "oci_url": "oci_url_value", + "create_time": {"seconds": 751, "nanos": 543}, + "properties": { + "state": 1, + "db_version": "db_version_value", + "db_backup_config": { + "auto_backup_enabled": True, + "backup_destination_details": [{"type_": 1}], + "retention_period_days": 2250, + "backup_deletion_policy": 1, + "auto_full_backup_day": 1, + "auto_full_backup_window": 1, + "auto_incremental_backup_window": 1, + }, + "database_management_config": { + "management_state": 1, + "management_type": 1, + }, + }, + "database_id": "database_id_value", + "db_home_name": "db_home_name_value", + "gcp_oracle_zone": "gcp_oracle_zone_value", + "ops_insights_status": 1, + "pluggable_database_id": "pluggable_database_id_value", + "pluggable_database_name": "pluggable_database_name_value", + }, + "is_unified_auditing_enabled": True, + }, + "ocid": "ocid_value", + "memory_size_gb": 1499, + "compute_model": 1, + "data_storage_size_gb": 2096, + "reco_storage_size_gb": 2111, + "domain": "domain_value", + "node_count": 1070, + "db_system_options": {"storage_management": 1}, + }, + "gcp_oracle_zone": "gcp_oracle_zone_value", "labels": {}, - "create_time": {"seconds": 751, "nanos": 543}, - "state": 1, + "odb_network": "odb_network_value", + "odb_subnet": "odb_subnet_value", "entitlement_id": "entitlement_id_value", - "gcp_oracle_zone": "gcp_oracle_zone_value", + "display_name": "display_name_value", + "create_time": {}, + "oci_url": "oci_url_value", } # The version of a generated dependency at test runtime may differ from the version used during generation. # Delete any fields which are not present in the current runtime dependency # See https://github.com/googleapis/gapic-generator-python/issues/1748 # Determine if the message type is proto-plus or protobuf - test_field = gco_odb_network.CreateOdbNetworkRequest.meta.fields["odb_network"] + test_field = gco_db_system.CreateDbSystemRequest.meta.fields["db_system"] def get_message_fields(field): # Given a field which is a message (composite type), return a list with @@ -47181,7 +67144,7 @@ def get_message_fields(field): # For each item in the sample request, create a list of sub fields which are not present at runtime # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime - for field, value in request_init["odb_network"].items(): # pragma: NO COVER + for field, value in request_init["db_system"].items(): # pragma: NO COVER result = None is_repeated = False # For repeated fields @@ -47211,10 +67174,10 @@ def get_message_fields(field): subfield = subfield_to_delete.get("subfield") if subfield: if field_repeated: - for i in range(0, len(request_init["odb_network"][field])): - del request_init["odb_network"][field][i][subfield] + for i in range(0, len(request_init["db_system"][field])): + del request_init["db_system"][field][i][subfield] else: - del request_init["odb_network"][field][subfield] + del request_init["db_system"][field][subfield] request = request_type(**request_init) # Mock the http request call within the method and fake a response. @@ -47229,14 +67192,14 @@ def get_message_fields(field): response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.create_odb_network(request) + response = client.create_db_system(request) # Establish that the response is the type that we expect. json_return_value = json_format.MessageToJson(return_value) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_create_odb_network_rest_interceptors(null_interceptor): +def test_create_db_system_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -47250,21 +67213,21 @@ def test_create_odb_network_rest_interceptors(null_interceptor): mock.patch.object(path_template, "transcode") as transcode, mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_create_odb_network" + transports.OracleDatabaseRestInterceptor, "post_create_db_system" ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_create_odb_network_with_metadata", + "post_create_db_system_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_create_odb_network" + transports.OracleDatabaseRestInterceptor, "pre_create_db_system" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = gco_odb_network.CreateOdbNetworkRequest.pb( - gco_odb_network.CreateOdbNetworkRequest() + pb_message = gco_db_system.CreateDbSystemRequest.pb( + gco_db_system.CreateDbSystemRequest() ) transcode.return_value = { "method": "post", @@ -47279,7 +67242,7 @@ def test_create_odb_network_rest_interceptors(null_interceptor): return_value = json_format.MessageToJson(operations_pb2.Operation()) req.return_value.content = return_value - request = gco_odb_network.CreateOdbNetworkRequest() + request = gco_db_system.CreateDbSystemRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), @@ -47288,7 +67251,7 @@ def test_create_odb_network_rest_interceptors(null_interceptor): post.return_value = operations_pb2.Operation() post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.create_odb_network( + client.create_db_system( request, metadata=[ ("key", "val"), @@ -47301,14 +67264,14 @@ def test_create_odb_network_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_delete_odb_network_rest_bad_request( - request_type=odb_network.DeleteOdbNetworkRequest, +def test_delete_db_system_rest_bad_request( + request_type=db_system.DeleteDbSystemRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"name": "projects/sample1/locations/sample2/odbNetworks/sample3"} + request_init = {"name": "projects/sample1/locations/sample2/dbSystems/sample3"} request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -47324,23 +67287,23 @@ def test_delete_odb_network_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.delete_odb_network(request) + client.delete_db_system(request) @pytest.mark.parametrize( "request_type", [ - odb_network.DeleteOdbNetworkRequest, + db_system.DeleteDbSystemRequest, dict, ], ) -def test_delete_odb_network_rest_call_success(request_type): +def test_delete_db_system_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"name": "projects/sample1/locations/sample2/odbNetworks/sample3"} + request_init = {"name": "projects/sample1/locations/sample2/dbSystems/sample3"} request = request_type(**request_init) # Mock the http request call within the method and fake a response. @@ -47355,14 +67318,14 @@ def test_delete_odb_network_rest_call_success(request_type): response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.delete_odb_network(request) + response = client.delete_db_system(request) # Establish that the response is the type that we expect. json_return_value = json_format.MessageToJson(return_value) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_delete_odb_network_rest_interceptors(null_interceptor): +def test_delete_db_system_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -47376,21 +67339,21 @@ def test_delete_odb_network_rest_interceptors(null_interceptor): mock.patch.object(path_template, "transcode") as transcode, mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_delete_odb_network" + transports.OracleDatabaseRestInterceptor, "post_delete_db_system" ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_delete_odb_network_with_metadata", + "post_delete_db_system_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_delete_odb_network" + transports.OracleDatabaseRestInterceptor, "pre_delete_db_system" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = odb_network.DeleteOdbNetworkRequest.pb( - odb_network.DeleteOdbNetworkRequest() + pb_message = db_system.DeleteDbSystemRequest.pb( + db_system.DeleteDbSystemRequest() ) transcode.return_value = { "method": "post", @@ -47405,7 +67368,7 @@ def test_delete_odb_network_rest_interceptors(null_interceptor): return_value = json_format.MessageToJson(operations_pb2.Operation()) req.return_value.content = return_value - request = odb_network.DeleteOdbNetworkRequest() + request = db_system.DeleteDbSystemRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), @@ -47414,7 +67377,7 @@ def test_delete_odb_network_rest_interceptors(null_interceptor): post.return_value = operations_pb2.Operation() post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.delete_odb_network( + client.delete_db_system( request, metadata=[ ("key", "val"), @@ -47427,14 +67390,14 @@ def test_delete_odb_network_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_list_odb_subnets_rest_bad_request( - request_type=odb_subnet.ListOdbSubnetsRequest, +def test_list_goldengate_deployments_rest_bad_request( + request_type=goldengate_deployment.ListGoldengateDeploymentsRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2/odbNetworks/sample3"} + request_init = {"parent": "projects/sample1/locations/sample2"} request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -47450,29 +67413,29 @@ def test_list_odb_subnets_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_odb_subnets(request) + client.list_goldengate_deployments(request) @pytest.mark.parametrize( "request_type", [ - odb_subnet.ListOdbSubnetsRequest, + goldengate_deployment.ListGoldengateDeploymentsRequest, dict, ], ) -def test_list_odb_subnets_rest_call_success(request_type): +def test_list_goldengate_deployments_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2/odbNetworks/sample3"} + request_init = {"parent": "projects/sample1/locations/sample2"} request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = odb_subnet.ListOdbSubnetsResponse( + return_value = goldengate_deployment.ListGoldengateDeploymentsResponse( next_page_token="next_page_token_value", unreachable=["unreachable_value"], ) @@ -47482,21 +67445,23 @@ def test_list_odb_subnets_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = odb_subnet.ListOdbSubnetsResponse.pb(return_value) + return_value = goldengate_deployment.ListGoldengateDeploymentsResponse.pb( + return_value + ) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_odb_subnets(request) + response = client.list_goldengate_deployments(request) # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListOdbSubnetsPager) + assert isinstance(response, pagers.ListGoldengateDeploymentsPager) assert response.next_page_token == "next_page_token_value" assert response.unreachable == ["unreachable_value"] @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_odb_subnets_rest_interceptors(null_interceptor): +def test_list_goldengate_deployments_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -47509,21 +67474,21 @@ def test_list_odb_subnets_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_list_odb_subnets" + transports.OracleDatabaseRestInterceptor, "post_list_goldengate_deployments" ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_list_odb_subnets_with_metadata", + "post_list_goldengate_deployments_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_list_odb_subnets" + transports.OracleDatabaseRestInterceptor, "pre_list_goldengate_deployments" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = odb_subnet.ListOdbSubnetsRequest.pb( - odb_subnet.ListOdbSubnetsRequest() + pb_message = goldengate_deployment.ListGoldengateDeploymentsRequest.pb( + goldengate_deployment.ListGoldengateDeploymentsRequest() ) transcode.return_value = { "method": "post", @@ -47535,21 +67500,24 @@ def test_list_odb_subnets_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = odb_subnet.ListOdbSubnetsResponse.to_json( - odb_subnet.ListOdbSubnetsResponse() + return_value = goldengate_deployment.ListGoldengateDeploymentsResponse.to_json( + goldengate_deployment.ListGoldengateDeploymentsResponse() ) req.return_value.content = return_value - request = odb_subnet.ListOdbSubnetsRequest() + request = goldengate_deployment.ListGoldengateDeploymentsRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = odb_subnet.ListOdbSubnetsResponse() - post_with_metadata.return_value = odb_subnet.ListOdbSubnetsResponse(), metadata + post.return_value = goldengate_deployment.ListGoldengateDeploymentsResponse() + post_with_metadata.return_value = ( + goldengate_deployment.ListGoldengateDeploymentsResponse(), + metadata, + ) - client.list_odb_subnets( + client.list_goldengate_deployments( request, metadata=[ ("key", "val"), @@ -47562,13 +67530,15 @@ def test_list_odb_subnets_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_get_odb_subnet_rest_bad_request(request_type=odb_subnet.GetOdbSubnetRequest): +def test_get_goldengate_deployment_rest_bad_request( + request_type=goldengate_deployment.GetGoldengateDeploymentRequest, +): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/odbNetworks/sample3/odbSubnets/sample4" + "name": "projects/sample1/locations/sample2/goldengateDeployments/sample3" } request = request_type(**request_init) @@ -47585,35 +67555,38 @@ def test_get_odb_subnet_rest_bad_request(request_type=odb_subnet.GetOdbSubnetReq response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_odb_subnet(request) + client.get_goldengate_deployment(request) @pytest.mark.parametrize( "request_type", [ - odb_subnet.GetOdbSubnetRequest, + goldengate_deployment.GetGoldengateDeploymentRequest, dict, ], ) -def test_get_odb_subnet_rest_call_success(request_type): +def test_get_goldengate_deployment_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/odbNetworks/sample3/odbSubnets/sample4" + "name": "projects/sample1/locations/sample2/goldengateDeployments/sample3" } request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = odb_subnet.OdbSubnet( + return_value = goldengate_deployment.GoldengateDeployment( name="name_value", - cidr_range="cidr_range_value", - purpose=odb_subnet.OdbSubnet.Purpose.CLIENT_SUBNET, - state=odb_subnet.OdbSubnet.State.PROVISIONING, + gcp_oracle_zone="gcp_oracle_zone_value", + odb_network="odb_network_value", + odb_subnet="odb_subnet_value", + entitlement_id="entitlement_id_value", + display_name="display_name_value", + oci_url="oci_url_value", ) # Wrap the value into a proper Response obj @@ -47621,23 +67594,26 @@ def test_get_odb_subnet_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = odb_subnet.OdbSubnet.pb(return_value) + return_value = goldengate_deployment.GoldengateDeployment.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_odb_subnet(request) + response = client.get_goldengate_deployment(request) # Establish that the response is the type that we expect. - assert isinstance(response, odb_subnet.OdbSubnet) + assert isinstance(response, goldengate_deployment.GoldengateDeployment) assert response.name == "name_value" - assert response.cidr_range == "cidr_range_value" - assert response.purpose == odb_subnet.OdbSubnet.Purpose.CLIENT_SUBNET - assert response.state == odb_subnet.OdbSubnet.State.PROVISIONING + assert response.gcp_oracle_zone == "gcp_oracle_zone_value" + assert response.odb_network == "odb_network_value" + assert response.odb_subnet == "odb_subnet_value" + assert response.entitlement_id == "entitlement_id_value" + assert response.display_name == "display_name_value" + assert response.oci_url == "oci_url_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_get_odb_subnet_rest_interceptors(null_interceptor): +def test_get_goldengate_deployment_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -47650,20 +67626,22 @@ def test_get_odb_subnet_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_get_odb_subnet" + transports.OracleDatabaseRestInterceptor, "post_get_goldengate_deployment" ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_get_odb_subnet_with_metadata", + "post_get_goldengate_deployment_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_get_odb_subnet" + transports.OracleDatabaseRestInterceptor, "pre_get_goldengate_deployment" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = odb_subnet.GetOdbSubnetRequest.pb(odb_subnet.GetOdbSubnetRequest()) + pb_message = goldengate_deployment.GetGoldengateDeploymentRequest.pb( + goldengate_deployment.GetGoldengateDeploymentRequest() + ) transcode.return_value = { "method": "post", "uri": "my_uri", @@ -47674,19 +67652,24 @@ def test_get_odb_subnet_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = odb_subnet.OdbSubnet.to_json(odb_subnet.OdbSubnet()) + return_value = goldengate_deployment.GoldengateDeployment.to_json( + goldengate_deployment.GoldengateDeployment() + ) req.return_value.content = return_value - request = odb_subnet.GetOdbSubnetRequest() + request = goldengate_deployment.GetGoldengateDeploymentRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = odb_subnet.OdbSubnet() - post_with_metadata.return_value = odb_subnet.OdbSubnet(), metadata + post.return_value = goldengate_deployment.GoldengateDeployment() + post_with_metadata.return_value = ( + goldengate_deployment.GoldengateDeployment(), + metadata, + ) - client.get_odb_subnet( + client.get_goldengate_deployment( request, metadata=[ ("key", "val"), @@ -47699,14 +67682,14 @@ def test_get_odb_subnet_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_create_odb_subnet_rest_bad_request( - request_type=gco_odb_subnet.CreateOdbSubnetRequest, +def test_create_goldengate_deployment_rest_bad_request( + request_type=gco_goldengate_deployment.CreateGoldengateDeploymentRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2/odbNetworks/sample3"} + request_init = {"parent": "projects/sample1/locations/sample2"} request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -47722,37 +67705,137 @@ def test_create_odb_subnet_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.create_odb_subnet(request) + client.create_goldengate_deployment(request) @pytest.mark.parametrize( "request_type", [ - gco_odb_subnet.CreateOdbSubnetRequest, + gco_goldengate_deployment.CreateGoldengateDeploymentRequest, dict, ], ) -def test_create_odb_subnet_rest_call_success(request_type): +def test_create_goldengate_deployment_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2/odbNetworks/sample3"} - request_init["odb_subnet"] = { + request_init = {"parent": "projects/sample1/locations/sample2"} + request_init["goldengate_deployment"] = { "name": "name_value", - "cidr_range": "cidr_range_value", - "purpose": 1, + "properties": { + "ocid": "ocid_value", + "lifecycle_state": 1, + "license_model": 1, + "environment_type": "environment_type_value", + "cpu_core_count": 1496, + "is_auto_scaling_enabled": True, + "description": "description_value", + "deployment_type": "deployment_type_value", + "ogg_data": { + "admin_password": "admin_password_value", + "admin_password_secret_version": "admin_password_secret_version_value", + "deployment": "deployment_value", + "admin_username": "admin_username_value", + "ogg_version": "ogg_version_value", + "certificate": "certificate_value", + "credential_store": 1, + "identity_domain_id": "identity_domain_id_value", + "password_secret_id": "password_secret_id_value", + "group_roles_mapping": { + "security_group_id": "security_group_id_value", + "administrator_group_id": "administrator_group_id_value", + "operator_group_id": "operator_group_id_value", + "user_group_id": "user_group_id_value", + }, + }, + "maintenance_window": {"day": 1, "start_hour": 1099}, + "maintenance_config": { + "is_interim_release_auto_upgrade_enabled": True, + "interim_release_upgrade_period_days": 3697, + "bundle_release_upgrade_period_days": 3571, + "major_release_upgrade_period_days": 3474, + "security_patch_upgrade_period_days": 3616, + }, + "fqdn": "fqdn_value", + "lifecycle_sub_state": 1, + "category": 1, + "deployment_backup_id": "deployment_backup_id_value", + "update_time": {"seconds": 751, "nanos": 543}, + "lifecycle_details": "lifecycle_details_value", + "healthy": True, + "load_balancer_subnet_id": "load_balancer_subnet_id_value", + "load_balancer_id": "load_balancer_id_value", + "nsg_ids": ["nsg_ids_value1", "nsg_ids_value2"], + "is_public": True, + "public_ip_address": "public_ip_address_value", + "private_ip_address": "private_ip_address_value", + "deployment_url": "deployment_url_value", + "is_latest_version": True, + "upgrade_required_time": {}, + "storage_utilization_bytes": 2710, + "is_storage_utilization_limit_exceeded": True, + "deployment_diagnostic_data": { + "namespace": "namespace_value", + "bucket": "bucket_value", + "object_": "object__value", + "diagnostic_state": 1, + "diagnostic_start_time": {}, + "diagnostic_end_time": {}, + }, + "backup_schedule": { + "bucket": "bucket_value", + "compartment_id": "compartment_id_value", + "frequency_backup_scheduled": 1, + "metadata_only": True, + "namespace": "namespace_value", + "backup_scheduled_time": {}, + }, + "next_maintenance_time": {}, + "next_maintenance_action_type": 1, + "next_maintenance_description": "next_maintenance_description_value", + "ogg_version_support_end_time": {}, + "ingress_ips": [{"ingress_ip_address": "ingress_ip_address_value"}], + "deployment_role": 1, + "last_backup_schedule_time": {}, + "next_backup_schedule_time": {}, + "role_change_time": {}, + "locks": [ + { + "type_": 1, + "compartment_id": "compartment_id_value", + "related_resource_id": "related_resource_id_value", + "message": "message_value", + "create_time": {}, + } + ], + "placements": [ + { + "availability_domain": "availability_domain_value", + "fault_domain": "fault_domain_value", + } + ], + }, + "gcp_oracle_zone": "gcp_oracle_zone_value", "labels": {}, - "create_time": {"seconds": 751, "nanos": 543}, - "state": 1, + "odb_network": "odb_network_value", + "odb_subnet": "odb_subnet_value", + "entitlement_id": "entitlement_id_value", + "display_name": "display_name_value", + "create_time": {}, + "oci_url": "oci_url_value", } # The version of a generated dependency at test runtime may differ from the version used during generation. # Delete any fields which are not present in the current runtime dependency # See https://github.com/googleapis/gapic-generator-python/issues/1748 # Determine if the message type is proto-plus or protobuf - test_field = gco_odb_subnet.CreateOdbSubnetRequest.meta.fields["odb_subnet"] + test_field = ( + gco_goldengate_deployment.CreateGoldengateDeploymentRequest.meta.fields[ + "goldengate_deployment" + ] + ) def get_message_fields(field): # Given a field which is a message (composite type), return a list with @@ -47780,7 +67863,9 @@ def get_message_fields(field): # For each item in the sample request, create a list of sub fields which are not present at runtime # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime - for field, value in request_init["odb_subnet"].items(): # pragma: NO COVER + for field, value in request_init[ + "goldengate_deployment" + ].items(): # pragma: NO COVER result = None is_repeated = False # For repeated fields @@ -47791,29 +67876,291 @@ def get_message_fields(field): if isinstance(value, dict): result = value - if result and hasattr(result, "keys"): - for subfield in result.keys(): - if (field, subfield) not in runtime_nested_fields: - subfields_not_in_runtime.append( - { - "field": field, - "subfield": subfield, - "is_repeated": is_repeated, - } - ) + if result and hasattr(result, "keys"): + for subfield in result.keys(): + if (field, subfield) not in runtime_nested_fields: + subfields_not_in_runtime.append( + { + "field": field, + "subfield": subfield, + "is_repeated": is_repeated, + } + ) + + # Remove fields from the sample request which are not present in the runtime version of the dependency + # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime + for subfield_to_delete in subfields_not_in_runtime: # pragma: NO COVER + field = subfield_to_delete.get("field") + field_repeated = subfield_to_delete.get("is_repeated") + subfield = subfield_to_delete.get("subfield") + if subfield: + if field_repeated: + for i in range(0, len(request_init["goldengate_deployment"][field])): + del request_init["goldengate_deployment"][field][i][subfield] + else: + del request_init["goldengate_deployment"][field][subfield] + request = request_type(**request_init) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.create_goldengate_deployment(request) + + # Establish that the response is the type that we expect. + json_return_value = json_format.MessageToJson(return_value) + + +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_create_goldengate_deployment_rest_interceptors(null_interceptor): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.OracleDatabaseRestInterceptor(), + ) + client = OracleDatabaseClient(transport=transport) + + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object(operation.Operation, "_set_result_from_operation"), + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_create_goldengate_deployment", + ) as post, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_create_goldengate_deployment_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "pre_create_goldengate_deployment" + ) as pre, + ): + pre.assert_not_called() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = gco_goldengate_deployment.CreateGoldengateDeploymentRequest.pb( + gco_goldengate_deployment.CreateGoldengateDeploymentRequest() + ) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } + + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = json_format.MessageToJson(operations_pb2.Operation()) + req.return_value.content = return_value + + request = gco_goldengate_deployment.CreateGoldengateDeploymentRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + post.return_value = operations_pb2.Operation() + post_with_metadata.return_value = operations_pb2.Operation(), metadata + + client.create_goldengate_deployment( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + + pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() + + +def test_delete_goldengate_deployment_rest_bad_request( + request_type=goldengate_deployment.DeleteGoldengateDeploymentRequest, +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/goldengateDeployments/sample3" + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.delete_goldengate_deployment(request) + + +@pytest.mark.parametrize( + "request_type", + [ + goldengate_deployment.DeleteGoldengateDeploymentRequest, + dict, + ], +) +def test_delete_goldengate_deployment_rest_call_success(request_type): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/goldengateDeployments/sample3" + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a response. + with mock.patch.object(type(client.transport._session), "request") as req: + # Designate an appropriate value for the returned response. + return_value = operations_pb2.Operation(name="operations/spam") + + # Wrap the value into a proper Response obj + response_value = mock.Mock() + response_value.status_code = 200 + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.delete_goldengate_deployment(request) + + # Establish that the response is the type that we expect. + json_return_value = json_format.MessageToJson(return_value) + + +@pytest.mark.parametrize("null_interceptor", [True, False]) +def test_delete_goldengate_deployment_rest_interceptors(null_interceptor): + transport = transports.OracleDatabaseRestTransport( + credentials=ga_credentials.AnonymousCredentials(), + interceptor=None + if null_interceptor + else transports.OracleDatabaseRestInterceptor(), + ) + client = OracleDatabaseClient(transport=transport) + + with ( + mock.patch.object(type(client.transport._session), "request") as req, + mock.patch.object(path_template, "transcode") as transcode, + mock.patch.object(operation.Operation, "_set_result_from_operation"), + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_delete_goldengate_deployment", + ) as post, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, + "post_delete_goldengate_deployment_with_metadata", + ) as post_with_metadata, + mock.patch.object( + transports.OracleDatabaseRestInterceptor, "pre_delete_goldengate_deployment" + ) as pre, + ): + pre.assert_not_called() + post.assert_not_called() + post_with_metadata.assert_not_called() + pb_message = goldengate_deployment.DeleteGoldengateDeploymentRequest.pb( + goldengate_deployment.DeleteGoldengateDeploymentRequest() + ) + transcode.return_value = { + "method": "post", + "uri": "my_uri", + "body": pb_message, + "query_params": pb_message, + } + + req.return_value = mock.Mock() + req.return_value.status_code = 200 + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + return_value = json_format.MessageToJson(operations_pb2.Operation()) + req.return_value.content = return_value + + request = goldengate_deployment.DeleteGoldengateDeploymentRequest() + metadata = [ + ("key", "val"), + ("cephalopod", "squid"), + ] + pre.return_value = request, metadata + post.return_value = operations_pb2.Operation() + post_with_metadata.return_value = operations_pb2.Operation(), metadata + + client.delete_goldengate_deployment( + request, + metadata=[ + ("key", "val"), + ("cephalopod", "squid"), + ], + ) + + pre.assert_called_once() + post.assert_called_once() + post_with_metadata.assert_called_once() + + +def test_stop_goldengate_deployment_rest_bad_request( + request_type=goldengate_deployment.StopGoldengateDeploymentRequest, +): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/goldengateDeployments/sample3" + } + request = request_type(**request_init) + + # Mock the http request call within the method and fake a BadRequest error. + with ( + mock.patch.object(Session, "request") as req, + pytest.raises(core_exceptions.BadRequest), + ): + # Wrap the value into a proper Response obj + response_value = mock.Mock() + json_return_value = "" + response_value.json = mock.Mock(return_value={}) + response_value.status_code = 400 + response_value.request = mock.Mock() + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + client.stop_goldengate_deployment(request) + - # Remove fields from the sample request which are not present in the runtime version of the dependency - # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime - for subfield_to_delete in subfields_not_in_runtime: # pragma: NO COVER - field = subfield_to_delete.get("field") - field_repeated = subfield_to_delete.get("is_repeated") - subfield = subfield_to_delete.get("subfield") - if subfield: - if field_repeated: - for i in range(0, len(request_init["odb_subnet"][field])): - del request_init["odb_subnet"][field][i][subfield] - else: - del request_init["odb_subnet"][field][subfield] +@pytest.mark.parametrize( + "request_type", + [ + goldengate_deployment.StopGoldengateDeploymentRequest, + dict, + ], +) +def test_stop_goldengate_deployment_rest_call_success(request_type): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), transport="rest" + ) + + # send a request that will satisfy transcoding + request_init = { + "name": "projects/sample1/locations/sample2/goldengateDeployments/sample3" + } request = request_type(**request_init) # Mock the http request call within the method and fake a response. @@ -47828,14 +68175,14 @@ def get_message_fields(field): response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.create_odb_subnet(request) + response = client.stop_goldengate_deployment(request) # Establish that the response is the type that we expect. json_return_value = json_format.MessageToJson(return_value) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_create_odb_subnet_rest_interceptors(null_interceptor): +def test_stop_goldengate_deployment_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -47849,21 +68196,21 @@ def test_create_odb_subnet_rest_interceptors(null_interceptor): mock.patch.object(path_template, "transcode") as transcode, mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_create_odb_subnet" + transports.OracleDatabaseRestInterceptor, "post_stop_goldengate_deployment" ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_create_odb_subnet_with_metadata", + "post_stop_goldengate_deployment_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_create_odb_subnet" + transports.OracleDatabaseRestInterceptor, "pre_stop_goldengate_deployment" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = gco_odb_subnet.CreateOdbSubnetRequest.pb( - gco_odb_subnet.CreateOdbSubnetRequest() + pb_message = goldengate_deployment.StopGoldengateDeploymentRequest.pb( + goldengate_deployment.StopGoldengateDeploymentRequest() ) transcode.return_value = { "method": "post", @@ -47878,7 +68225,7 @@ def test_create_odb_subnet_rest_interceptors(null_interceptor): return_value = json_format.MessageToJson(operations_pb2.Operation()) req.return_value.content = return_value - request = gco_odb_subnet.CreateOdbSubnetRequest() + request = goldengate_deployment.StopGoldengateDeploymentRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), @@ -47887,7 +68234,7 @@ def test_create_odb_subnet_rest_interceptors(null_interceptor): post.return_value = operations_pb2.Operation() post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.create_odb_subnet( + client.stop_goldengate_deployment( request, metadata=[ ("key", "val"), @@ -47900,15 +68247,15 @@ def test_create_odb_subnet_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_delete_odb_subnet_rest_bad_request( - request_type=odb_subnet.DeleteOdbSubnetRequest, +def test_start_goldengate_deployment_rest_bad_request( + request_type=goldengate_deployment.StartGoldengateDeploymentRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/odbNetworks/sample3/odbSubnets/sample4" + "name": "projects/sample1/locations/sample2/goldengateDeployments/sample3" } request = request_type(**request_init) @@ -47925,24 +68272,24 @@ def test_delete_odb_subnet_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.delete_odb_subnet(request) + client.start_goldengate_deployment(request) @pytest.mark.parametrize( "request_type", [ - odb_subnet.DeleteOdbSubnetRequest, + goldengate_deployment.StartGoldengateDeploymentRequest, dict, ], ) -def test_delete_odb_subnet_rest_call_success(request_type): +def test_start_goldengate_deployment_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/odbNetworks/sample3/odbSubnets/sample4" + "name": "projects/sample1/locations/sample2/goldengateDeployments/sample3" } request = request_type(**request_init) @@ -47958,14 +68305,14 @@ def test_delete_odb_subnet_rest_call_success(request_type): response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.delete_odb_subnet(request) + response = client.start_goldengate_deployment(request) # Establish that the response is the type that we expect. json_return_value = json_format.MessageToJson(return_value) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_delete_odb_subnet_rest_interceptors(null_interceptor): +def test_start_goldengate_deployment_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -47979,21 +68326,21 @@ def test_delete_odb_subnet_rest_interceptors(null_interceptor): mock.patch.object(path_template, "transcode") as transcode, mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_delete_odb_subnet" + transports.OracleDatabaseRestInterceptor, "post_start_goldengate_deployment" ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_delete_odb_subnet_with_metadata", + "post_start_goldengate_deployment_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_delete_odb_subnet" + transports.OracleDatabaseRestInterceptor, "pre_start_goldengate_deployment" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = odb_subnet.DeleteOdbSubnetRequest.pb( - odb_subnet.DeleteOdbSubnetRequest() + pb_message = goldengate_deployment.StartGoldengateDeploymentRequest.pb( + goldengate_deployment.StartGoldengateDeploymentRequest() ) transcode.return_value = { "method": "post", @@ -48008,7 +68355,7 @@ def test_delete_odb_subnet_rest_interceptors(null_interceptor): return_value = json_format.MessageToJson(operations_pb2.Operation()) req.return_value.content = return_value - request = odb_subnet.DeleteOdbSubnetRequest() + request = goldengate_deployment.StartGoldengateDeploymentRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), @@ -48017,7 +68364,7 @@ def test_delete_odb_subnet_rest_interceptors(null_interceptor): post.return_value = operations_pb2.Operation() post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.delete_odb_subnet( + client.start_goldengate_deployment( request, metadata=[ ("key", "val"), @@ -48030,8 +68377,8 @@ def test_delete_odb_subnet_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_list_exadb_vm_clusters_rest_bad_request( - request_type=oracledatabase.ListExadbVmClustersRequest, +def test_list_goldengate_connections_rest_bad_request( + request_type=goldengate_connection.ListGoldengateConnectionsRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" @@ -48053,17 +68400,17 @@ def test_list_exadb_vm_clusters_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_exadb_vm_clusters(request) + client.list_goldengate_connections(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.ListExadbVmClustersRequest, + goldengate_connection.ListGoldengateConnectionsRequest, dict, ], ) -def test_list_exadb_vm_clusters_rest_call_success(request_type): +def test_list_goldengate_connections_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) @@ -48075,8 +68422,9 @@ def test_list_exadb_vm_clusters_rest_call_success(request_type): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = oracledatabase.ListExadbVmClustersResponse( + return_value = goldengate_connection.ListGoldengateConnectionsResponse( next_page_token="next_page_token_value", + unreachable=["unreachable_value"], ) # Wrap the value into a proper Response obj @@ -48084,20 +68432,23 @@ def test_list_exadb_vm_clusters_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = oracledatabase.ListExadbVmClustersResponse.pb(return_value) + return_value = goldengate_connection.ListGoldengateConnectionsResponse.pb( + return_value + ) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_exadb_vm_clusters(request) + response = client.list_goldengate_connections(request) # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListExadbVmClustersPager) + assert isinstance(response, pagers.ListGoldengateConnectionsPager) assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_exadb_vm_clusters_rest_interceptors(null_interceptor): +def test_list_goldengate_connections_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -48110,21 +68461,21 @@ def test_list_exadb_vm_clusters_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_list_exadb_vm_clusters" + transports.OracleDatabaseRestInterceptor, "post_list_goldengate_connections" ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_list_exadb_vm_clusters_with_metadata", + "post_list_goldengate_connections_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_list_exadb_vm_clusters" + transports.OracleDatabaseRestInterceptor, "pre_list_goldengate_connections" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.ListExadbVmClustersRequest.pb( - oracledatabase.ListExadbVmClustersRequest() + pb_message = goldengate_connection.ListGoldengateConnectionsRequest.pb( + goldengate_connection.ListGoldengateConnectionsRequest() ) transcode.return_value = { "method": "post", @@ -48136,24 +68487,24 @@ def test_list_exadb_vm_clusters_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = oracledatabase.ListExadbVmClustersResponse.to_json( - oracledatabase.ListExadbVmClustersResponse() + return_value = goldengate_connection.ListGoldengateConnectionsResponse.to_json( + goldengate_connection.ListGoldengateConnectionsResponse() ) req.return_value.content = return_value - request = oracledatabase.ListExadbVmClustersRequest() + request = goldengate_connection.ListGoldengateConnectionsRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = oracledatabase.ListExadbVmClustersResponse() + post.return_value = goldengate_connection.ListGoldengateConnectionsResponse() post_with_metadata.return_value = ( - oracledatabase.ListExadbVmClustersResponse(), + goldengate_connection.ListGoldengateConnectionsResponse(), metadata, ) - client.list_exadb_vm_clusters( + client.list_goldengate_connections( request, metadata=[ ("key", "val"), @@ -48166,15 +68517,15 @@ def test_list_exadb_vm_clusters_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_get_exadb_vm_cluster_rest_bad_request( - request_type=oracledatabase.GetExadbVmClusterRequest, +def test_get_goldengate_connection_rest_bad_request( + request_type=goldengate_connection.GetGoldengateConnectionRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/exadbVmClusters/sample3" + "name": "projects/sample1/locations/sample2/goldengateConnections/sample3" } request = request_type(**request_init) @@ -48191,38 +68542,37 @@ def test_get_exadb_vm_cluster_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_exadb_vm_cluster(request) + client.get_goldengate_connection(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.GetExadbVmClusterRequest, + goldengate_connection.GetGoldengateConnectionRequest, dict, ], ) -def test_get_exadb_vm_cluster_rest_call_success(request_type): +def test_get_goldengate_connection_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/exadbVmClusters/sample3" + "name": "projects/sample1/locations/sample2/goldengateConnections/sample3" } request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = exadb_vm_cluster.ExadbVmCluster( + return_value = goldengate_connection.GoldengateConnection( name="name_value", gcp_oracle_zone="gcp_oracle_zone_value", odb_network="odb_network_value", odb_subnet="odb_subnet_value", - backup_odb_subnet="backup_odb_subnet_value", - display_name="display_name_value", entitlement_id="entitlement_id_value", + oci_url="oci_url_value", ) # Wrap the value into a proper Response obj @@ -48230,26 +68580,25 @@ def test_get_exadb_vm_cluster_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = exadb_vm_cluster.ExadbVmCluster.pb(return_value) + return_value = goldengate_connection.GoldengateConnection.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_exadb_vm_cluster(request) + response = client.get_goldengate_connection(request) # Establish that the response is the type that we expect. - assert isinstance(response, exadb_vm_cluster.ExadbVmCluster) + assert isinstance(response, goldengate_connection.GoldengateConnection) assert response.name == "name_value" assert response.gcp_oracle_zone == "gcp_oracle_zone_value" assert response.odb_network == "odb_network_value" assert response.odb_subnet == "odb_subnet_value" - assert response.backup_odb_subnet == "backup_odb_subnet_value" - assert response.display_name == "display_name_value" assert response.entitlement_id == "entitlement_id_value" + assert response.oci_url == "oci_url_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_get_exadb_vm_cluster_rest_interceptors(null_interceptor): +def test_get_goldengate_connection_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -48262,21 +68611,21 @@ def test_get_exadb_vm_cluster_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_get_exadb_vm_cluster" + transports.OracleDatabaseRestInterceptor, "post_get_goldengate_connection" ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_get_exadb_vm_cluster_with_metadata", + "post_get_goldengate_connection_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_get_exadb_vm_cluster" + transports.OracleDatabaseRestInterceptor, "pre_get_goldengate_connection" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.GetExadbVmClusterRequest.pb( - oracledatabase.GetExadbVmClusterRequest() + pb_message = goldengate_connection.GetGoldengateConnectionRequest.pb( + goldengate_connection.GetGoldengateConnectionRequest() ) transcode.return_value = { "method": "post", @@ -48288,21 +68637,24 @@ def test_get_exadb_vm_cluster_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = exadb_vm_cluster.ExadbVmCluster.to_json( - exadb_vm_cluster.ExadbVmCluster() + return_value = goldengate_connection.GoldengateConnection.to_json( + goldengate_connection.GoldengateConnection() ) req.return_value.content = return_value - request = oracledatabase.GetExadbVmClusterRequest() + request = goldengate_connection.GetGoldengateConnectionRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = exadb_vm_cluster.ExadbVmCluster() - post_with_metadata.return_value = exadb_vm_cluster.ExadbVmCluster(), metadata + post.return_value = goldengate_connection.GoldengateConnection() + post_with_metadata.return_value = ( + goldengate_connection.GoldengateConnection(), + metadata, + ) - client.get_exadb_vm_cluster( + client.get_goldengate_connection( request, metadata=[ ("key", "val"), @@ -48315,8 +68667,8 @@ def test_get_exadb_vm_cluster_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_create_exadb_vm_cluster_rest_bad_request( - request_type=oracledatabase.CreateExadbVmClusterRequest, +def test_create_goldengate_connection_rest_bad_request( + request_type=gco_goldengate_connection.CreateGoldengateConnectionRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" @@ -48338,67 +68690,406 @@ def test_create_exadb_vm_cluster_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.create_exadb_vm_cluster(request) + client.create_goldengate_connection(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.CreateExadbVmClusterRequest, + gco_goldengate_connection.CreateGoldengateConnectionRequest, dict, ], ) -def test_create_exadb_vm_cluster_rest_call_success(request_type): +def test_create_goldengate_connection_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = {"parent": "projects/sample1/locations/sample2"} - request_init["exadb_vm_cluster"] = { + request_init["goldengate_connection"] = { "name": "name_value", "properties": { - "cluster_name": "cluster_name_value", - "grid_image_id": "grid_image_id_value", - "node_count": 1070, - "enabled_ecpu_count_per_node": 2826, - "additional_ecpu_count_per_node": 3160, - "vm_file_system_storage": {"size_in_gbs_per_node": 2103}, - "license_model": 1, - "exascale_db_storage_vault": "exascale_db_storage_vault_value", - "hostname_prefix": "hostname_prefix_value", - "hostname": "hostname_value", - "ssh_public_keys": ["ssh_public_keys_value1", "ssh_public_keys_value2"], - "data_collection_options": { - "is_diagnostics_events_enabled": True, - "is_health_monitoring_enabled": True, - "is_incident_logs_enabled": True, + "oracle_connection_properties": { + "password": "password_value", + "password_secret_version": "password_secret_version_value", + "technology_type": "technology_type_value", + "username": "username_value", + "authentication_mode": 1, + "connection_string": "connection_string_value", + "session_mode": 1, + "gcp_oracle_database_id": "gcp_oracle_database_id_value", + "wallet_file": "wallet_file_value", }, - "time_zone": {"id": "id_value", "version": "version_value"}, + "goldengate_connection_properties": { + "password": "password_value", + "password_secret_version": "password_secret_version_value", + "technology_type": "technology_type_value", + "goldengate_deployment_id": "goldengate_deployment_id_value", + "host": "host_value", + "port": 453, + "username": "username_value", + }, + "generic_connection_properties": { + "technology_type": "technology_type_value", + "host": "host_value", + }, + "google_cloud_storage_connection_properties": { + "technology_type": "technology_type_value", + "service_account_key_file": "service_account_key_file_value", + }, + "google_big_query_connection_properties": { + "technology_type": "technology_type_value", + "service_account_key_file": "service_account_key_file_value", + }, + "mysql_connection_properties": { + "password": "password_value", + "password_secret_version": "password_secret_version_value", + "technology_type": "technology_type_value", + "username": "username_value", + "host": "host_value", + "port": 453, + "database": "database_value", + "security_protocol": 1, + "ssl_mode": 1, + "ssl_ca_file": "ssl_ca_file_value", + "ssl_crl_file": "ssl_crl_file_value", + "ssl_cert_file": "ssl_cert_file_value", + "ssl_key_file": "ssl_key_file_value", + "additional_attributes": [{"key": "key_value", "value": "value_value"}], + "db_system_id": "db_system_id_value", + }, + "kafka_connection_properties": { + "password": "password_value", + "password_secret_version": "password_secret_version_value", + "trust_store_password": "trust_store_password_value", + "trust_store_password_secret_version": "trust_store_password_secret_version_value", + "key_store_password": "key_store_password_value", + "key_store_password_secret_version": "key_store_password_secret_version_value", + "ssl_key_password": "ssl_key_password_value", + "ssl_key_password_secret_version": "ssl_key_password_secret_version_value", + "technology_type": "technology_type_value", + "stream_pool_id": "stream_pool_id_value", + "cluster_id": "cluster_id_value", + "bootstrap_servers": [ + { + "host": "host_value", + "port": 453, + "private_ip_address": "private_ip_address_value", + } + ], + "security_protocol": 1, + "username": "username_value", + "trust_store_file": "trust_store_file_value", + "key_store_file": "key_store_file_value", + "consumer_properties_file": "consumer_properties_file_value", + "producer_properties_file": "producer_properties_file_value", + "use_resource_principal": True, + }, + "kafka_schema_registry_connection_properties": { + "password": "password_value", + "password_secret_version": "password_secret_version_value", + "trust_store_password": "trust_store_password_value", + "trust_store_password_secret_version": "trust_store_password_secret_version_value", + "key_store_password": "key_store_password_value", + "key_store_password_secret_version": "key_store_password_secret_version_value", + "ssl_key_password": "ssl_key_password_value", + "ssl_key_password_secret_version": "ssl_key_password_secret_version_value", + "technology_type": "technology_type_value", + "url": "url_value", + "authentication_type": 1, + "username": "username_value", + "trust_store_file": "trust_store_file_value", + "key_store_file": "key_store_file_value", + }, + "oci_object_storage_connection_properties": { + "technology_type": "technology_type_value", + "tenancy_id": "tenancy_id_value", + "region": "region_value", + "user_id": "user_id_value", + "private_key_file": "private_key_file_value", + "private_key_passphrase_secret": "private_key_passphrase_secret_value", + "public_key_fingerprint": "public_key_fingerprint_value", + "use_resource_principal": True, + }, + "azure_data_lake_storage_connection_properties": { + "technology_type": "technology_type_value", + "authentication_type": 1, + "account": "account_value", + "account_key_secret": "account_key_secret_value", + "sas_token_secret": "sas_token_secret_value", + "azure_tenant_id": "azure_tenant_id_value", + "client_id": "client_id_value", + "client_secret": "client_secret_value", + "endpoint": "endpoint_value", + "azure_authority_host": "azure_authority_host_value", + }, + "azure_synapse_analytics_connection_properties": { + "password": "password_value", + "password_secret_version": "password_secret_version_value", + "technology_type": "technology_type_value", + "connection_string": "connection_string_value", + "username": "username_value", + }, + "postgresql_connection_properties": { + "password": "password_value", + "password_secret_version": "password_secret_version_value", + "technology_type": "technology_type_value", + "database": "database_value", + "host": "host_value", + "port": 453, + "username": "username_value", + "additional_attributes": {}, + "security_protocol": 1, + "ssl_mode": 1, + "ssl_ca_file": "ssl_ca_file_value", + "ssl_crl_file": "ssl_crl_file_value", + "ssl_cert_file": "ssl_cert_file_value", + "ssl_key_file": "ssl_key_file_value", + "db_system_id": "db_system_id_value", + }, + "microsoft_sqlserver_connection_properties": { + "password": "password_value", + "password_secret_version": "password_secret_version_value", + "technology_type": "technology_type_value", + "database": "database_value", + "host": "host_value", + "port": 453, + "username": "username_value", + "additional_attributes": {}, + "security_protocol": 1, + "ssl_ca_file": "ssl_ca_file_value", + "server_certificate_validation_required": True, + }, + "amazon_s3_connection_properties": { + "technology_type": "technology_type_value", + "access_key_id": "access_key_id_value", + "secret_access_key_secret": "secret_access_key_secret_value", + "endpoint": "endpoint_value", + "region": "region_value", + }, + "hdfs_connection_properties": { + "technology_type": "technology_type_value", + "core_site_xml": "core_site_xml_value", + }, + "java_message_service_connection_properties": { + "password": "password_value", + "password_secret_version": "password_secret_version_value", + "trust_store_password": "trust_store_password_value", + "trust_store_password_secret_version": "trust_store_password_secret_version_value", + "key_store_password": "key_store_password_value", + "key_store_password_secret_version": "key_store_password_secret_version_value", + "ssl_key_password": "ssl_key_password_value", + "ssl_key_password_secret_version": "ssl_key_password_secret_version_value", + "technology_type": "technology_type_value", + "use_jndi": True, + "jndi_connection_factory": "jndi_connection_factory_value", + "jndi_provider_url": "jndi_provider_url_value", + "jndi_initial_context_factory": "jndi_initial_context_factory_value", + "jndi_security_principal": "jndi_security_principal_value", + "jndi_security_credentials_secret": "jndi_security_credentials_secret_value", + "connection_url": "connection_url_value", + "connection_factory": "connection_factory_value", + "username": "username_value", + "security_protocol": 1, + "authentication_type": 1, + "trust_store_file": "trust_store_file_value", + "key_store_file": "key_store_file_value", + }, + "mongodb_connection_properties": { + "password": "password_value", + "password_secret_version": "password_secret_version_value", + "tls_certificate_key_file_password": "tls_certificate_key_file_password_value", + "tls_certificate_key_file_password_secret_version": "tls_certificate_key_file_password_secret_version_value", + "technology_type": "technology_type_value", + "connection_string": "connection_string_value", + "username": "username_value", + "database_id": "database_id_value", + "security_protocol": 1, + "tls_ca_file": "tls_ca_file_value", + "tls_certificate_key_file": "tls_certificate_key_file_value", + }, + "oracle_nosql_connection_properties": { + "technology_type": "technology_type_value", + "tenancy_id": "tenancy_id_value", + "region": "region_value", + "user_id": "user_id_value", + "private_key_file": "private_key_file_value", + "private_key_passphrase_secret": "private_key_passphrase_secret_value", + "public_key_fingerprint": "public_key_fingerprint_value", + "use_resource_principal": True, + }, + "snowflake_connection_properties": { + "password": "password_value", + "password_secret_version": "password_secret_version_value", + "technology_type": "technology_type_value", + "connection_url": "connection_url_value", + "authentication_type": 1, + "username": "username_value", + "private_key_file": "private_key_file_value", + "private_key_passphrase_secret": "private_key_passphrase_secret_value", + }, + "amazon_redshift_connection_properties": { + "password": "password_value", + "password_secret_version": "password_secret_version_value", + "technology_type": "technology_type_value", + "connection_url": "connection_url_value", + "username": "username_value", + }, + "elasticsearch_connection_properties": { + "password": "password_value", + "password_secret_version": "password_secret_version_value", + "technology_type": "technology_type_value", + "servers": "servers_value", + "security_protocol": 1, + "authentication_type": 1, + "username": "username_value", + "fingerprint": "fingerprint_value", + }, + "amazon_kinesis_connection_properties": { + "technology_type": "technology_type_value", + "access_key_id": "access_key_id_value", + "secret_access_key_secret": "secret_access_key_secret_value", + "endpoint": "endpoint_value", + "aws_region": "aws_region_value", + }, + "db2_connection_properties": { + "password": "password_value", + "password_secret_version": "password_secret_version_value", + "technology_type": "technology_type_value", + "host": "host_value", + "port": 453, + "database": "database_value", + "username": "username_value", + "security_protocol": 1, + "additional_attributes": {}, + "ssl_client_keystoredb_file": "ssl_client_keystoredb_file_value", + "ssl_client_keystash_file": "ssl_client_keystash_file_value", + "ssl_server_certificate_file": "ssl_server_certificate_file_value", + }, + "redis_connection_properties": { + "password": "password_value", + "password_secret_version": "password_secret_version_value", + "trust_store_password": "trust_store_password_value", + "trust_store_password_secret_version": "trust_store_password_secret_version_value", + "key_store_password": "key_store_password_value", + "key_store_password_secret_version": "key_store_password_secret_version_value", + "technology_type": "technology_type_value", + "servers": "servers_value", + "security_protocol": 1, + "authentication_type": 1, + "username": "username_value", + "redis_cluster_id": "redis_cluster_id_value", + "trust_store_file": "trust_store_file_value", + "key_store_file": "key_store_file_value", + }, + "databricks_connection_properties": { + "password": "password_value", + "password_secret_version": "password_secret_version_value", + "technology_type": "technology_type_value", + "authentication_type": 1, + "connection_url": "connection_url_value", + "client_id": "client_id_value", + "client_secret": "client_secret_value", + "storage_credential": "storage_credential_value", + }, + "google_pubsub_connection_properties": { + "technology_type": "technology_type_value", + "service_account_key_file": "service_account_key_file_value", + }, + "microsoft_fabric_connection_properties": { + "technology_type": "technology_type_value", + "tenant_id": "tenant_id_value", + "client_id": "client_id_value", + "client_secret": "client_secret_value", + "endpoint": "endpoint_value", + }, + "oracle_ai_data_platform_connection_properties": { + "technology_type": "technology_type_value", + "connection_url": "connection_url_value", + "tenancy_id": "tenancy_id_value", + "region": "region_value", + "user_id": "user_id_value", + "private_key_file": "private_key_file_value", + "private_key_passphrase_secret": "private_key_passphrase_secret_value", + "public_key_fingerprint": "public_key_fingerprint_value", + "use_resource_principal": True, + }, + "iceberg_connection_properties": { + "technology_type": "technology_type_value", + "catalog": { + "glue_iceberg_catalog": {"glue_id": "glue_id_value"}, + "nessie_iceberg_catalog": { + "uri": "uri_value", + "branch": "branch_value", + }, + "polaris_iceberg_catalog": { + "uri": "uri_value", + "polaris_catalog": "polaris_catalog_value", + "client_id": "client_id_value", + "principal_role": "principal_role_value", + "client_secret": "client_secret_value", + }, + "rest_iceberg_catalog": { + "uri": "uri_value", + "properties": "properties_value", + }, + "catalog_type": 1, + }, + "storage": { + "amazon_s3_iceberg_storage": { + "scheme_type": 1, + "access_key_id": "access_key_id_value", + "region": "region_value", + "bucket": "bucket_value", + "endpoint": "endpoint_value", + "secret_access_key_secret": "secret_access_key_secret_value", + }, + "google_cloud_storage_iceberg_storage": { + "bucket": "bucket_value", + "project_id": "project_id_value", + "service_account_key_file": "service_account_key_file_value", + }, + "azure_data_lake_storage_iceberg_storage": { + "azure_account": "azure_account_value", + "container": "container_value", + "account_key_secret": "account_key_secret_value", + "endpoint": "endpoint_value", + }, + "storage_type": 1, + }, + }, + "connection_type": 1, + "ocid": "ocid_value", + "display_name": "display_name_value", + "description": "description_value", "lifecycle_state": 1, - "shape_attribute": 1, - "memory_size_gb": 1499, - "scan_listener_port_tcp": 2356, - "oci_uri": "oci_uri_value", - "gi_version": "gi_version_value", + "lifecycle_details": "lifecycle_details_value", + "update_time": {"seconds": 751, "nanos": 543}, + "routing_method": 1, + "ingress_ip_addresses": [ + "ingress_ip_addresses_value1", + "ingress_ip_addresses_value2", + ], }, "gcp_oracle_zone": "gcp_oracle_zone_value", "labels": {}, "odb_network": "odb_network_value", "odb_subnet": "odb_subnet_value", - "backup_odb_subnet": "backup_odb_subnet_value", - "display_name": "display_name_value", - "create_time": {"seconds": 751, "nanos": 543}, "entitlement_id": "entitlement_id_value", + "create_time": {}, + "oci_url": "oci_url_value", } # The version of a generated dependency at test runtime may differ from the version used during generation. # Delete any fields which are not present in the current runtime dependency # See https://github.com/googleapis/gapic-generator-python/issues/1748 # Determine if the message type is proto-plus or protobuf - test_field = oracledatabase.CreateExadbVmClusterRequest.meta.fields[ - "exadb_vm_cluster" - ] + test_field = ( + gco_goldengate_connection.CreateGoldengateConnectionRequest.meta.fields[ + "goldengate_connection" + ] + ) def get_message_fields(field): # Given a field which is a message (composite type), return a list with @@ -48426,7 +69117,9 @@ def get_message_fields(field): # For each item in the sample request, create a list of sub fields which are not present at runtime # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime - for field, value in request_init["exadb_vm_cluster"].items(): # pragma: NO COVER + for field, value in request_init[ + "goldengate_connection" + ].items(): # pragma: NO COVER result = None is_repeated = False # For repeated fields @@ -48456,10 +69149,10 @@ def get_message_fields(field): subfield = subfield_to_delete.get("subfield") if subfield: if field_repeated: - for i in range(0, len(request_init["exadb_vm_cluster"][field])): - del request_init["exadb_vm_cluster"][field][i][subfield] + for i in range(0, len(request_init["goldengate_connection"][field])): + del request_init["goldengate_connection"][field][i][subfield] else: - del request_init["exadb_vm_cluster"][field][subfield] + del request_init["goldengate_connection"][field][subfield] request = request_type(**request_init) # Mock the http request call within the method and fake a response. @@ -48474,14 +69167,14 @@ def get_message_fields(field): response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.create_exadb_vm_cluster(request) + response = client.create_goldengate_connection(request) # Establish that the response is the type that we expect. json_return_value = json_format.MessageToJson(return_value) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_create_exadb_vm_cluster_rest_interceptors(null_interceptor): +def test_create_goldengate_connection_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -48495,21 +69188,22 @@ def test_create_exadb_vm_cluster_rest_interceptors(null_interceptor): mock.patch.object(path_template, "transcode") as transcode, mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_create_exadb_vm_cluster" + transports.OracleDatabaseRestInterceptor, + "post_create_goldengate_connection", ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_create_exadb_vm_cluster_with_metadata", + "post_create_goldengate_connection_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_create_exadb_vm_cluster" + transports.OracleDatabaseRestInterceptor, "pre_create_goldengate_connection" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.CreateExadbVmClusterRequest.pb( - oracledatabase.CreateExadbVmClusterRequest() + pb_message = gco_goldengate_connection.CreateGoldengateConnectionRequest.pb( + gco_goldengate_connection.CreateGoldengateConnectionRequest() ) transcode.return_value = { "method": "post", @@ -48524,7 +69218,7 @@ def test_create_exadb_vm_cluster_rest_interceptors(null_interceptor): return_value = json_format.MessageToJson(operations_pb2.Operation()) req.return_value.content = return_value - request = oracledatabase.CreateExadbVmClusterRequest() + request = gco_goldengate_connection.CreateGoldengateConnectionRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), @@ -48533,7 +69227,7 @@ def test_create_exadb_vm_cluster_rest_interceptors(null_interceptor): post.return_value = operations_pb2.Operation() post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.create_exadb_vm_cluster( + client.create_goldengate_connection( request, metadata=[ ("key", "val"), @@ -48546,15 +69240,15 @@ def test_create_exadb_vm_cluster_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_delete_exadb_vm_cluster_rest_bad_request( - request_type=oracledatabase.DeleteExadbVmClusterRequest, +def test_delete_goldengate_connection_rest_bad_request( + request_type=goldengate_connection.DeleteGoldengateConnectionRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/exadbVmClusters/sample3" + "name": "projects/sample1/locations/sample2/goldengateConnections/sample3" } request = request_type(**request_init) @@ -48571,24 +69265,24 @@ def test_delete_exadb_vm_cluster_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.delete_exadb_vm_cluster(request) + client.delete_goldengate_connection(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.DeleteExadbVmClusterRequest, + goldengate_connection.DeleteGoldengateConnectionRequest, dict, ], ) -def test_delete_exadb_vm_cluster_rest_call_success(request_type): +def test_delete_goldengate_connection_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/exadbVmClusters/sample3" + "name": "projects/sample1/locations/sample2/goldengateConnections/sample3" } request = request_type(**request_init) @@ -48604,14 +69298,14 @@ def test_delete_exadb_vm_cluster_rest_call_success(request_type): response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.delete_exadb_vm_cluster(request) + response = client.delete_goldengate_connection(request) # Establish that the response is the type that we expect. json_return_value = json_format.MessageToJson(return_value) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_delete_exadb_vm_cluster_rest_interceptors(null_interceptor): +def test_delete_goldengate_connection_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -48625,21 +69319,22 @@ def test_delete_exadb_vm_cluster_rest_interceptors(null_interceptor): mock.patch.object(path_template, "transcode") as transcode, mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_delete_exadb_vm_cluster" + transports.OracleDatabaseRestInterceptor, + "post_delete_goldengate_connection", ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_delete_exadb_vm_cluster_with_metadata", + "post_delete_goldengate_connection_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_delete_exadb_vm_cluster" + transports.OracleDatabaseRestInterceptor, "pre_delete_goldengate_connection" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.DeleteExadbVmClusterRequest.pb( - oracledatabase.DeleteExadbVmClusterRequest() + pb_message = goldengate_connection.DeleteGoldengateConnectionRequest.pb( + goldengate_connection.DeleteGoldengateConnectionRequest() ) transcode.return_value = { "method": "post", @@ -48654,7 +69349,7 @@ def test_delete_exadb_vm_cluster_rest_interceptors(null_interceptor): return_value = json_format.MessageToJson(operations_pb2.Operation()) req.return_value.content = return_value - request = oracledatabase.DeleteExadbVmClusterRequest() + request = goldengate_connection.DeleteGoldengateConnectionRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), @@ -48663,7 +69358,7 @@ def test_delete_exadb_vm_cluster_rest_interceptors(null_interceptor): post.return_value = operations_pb2.Operation() post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.delete_exadb_vm_cluster( + client.delete_goldengate_connection( request, metadata=[ ("key", "val"), @@ -48676,17 +69371,15 @@ def test_delete_exadb_vm_cluster_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_update_exadb_vm_cluster_rest_bad_request( - request_type=oracledatabase.UpdateExadbVmClusterRequest, +def test_get_goldengate_deployment_version_rest_bad_request( + request_type=goldengate_deployment_version.GetGoldengateDeploymentVersionRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "exadb_vm_cluster": { - "name": "projects/sample1/locations/sample2/exadbVmClusters/sample3" - } + "name": "projects/sample1/locations/sample2/goldengateDeploymentVersions/sample3" } request = request_type(**request_init) @@ -48703,284 +69396,59 @@ def test_update_exadb_vm_cluster_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.update_exadb_vm_cluster(request) + client.get_goldengate_deployment_version(request) @pytest.mark.parametrize( "request_type", [ - oracledatabase.UpdateExadbVmClusterRequest, + goldengate_deployment_version.GetGoldengateDeploymentVersionRequest, dict, ], ) -def test_update_exadb_vm_cluster_rest_call_success(request_type): +def test_get_goldengate_deployment_version_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "exadb_vm_cluster": { - "name": "projects/sample1/locations/sample2/exadbVmClusters/sample3" - } - } - request_init["exadb_vm_cluster"] = { - "name": "projects/sample1/locations/sample2/exadbVmClusters/sample3", - "properties": { - "cluster_name": "cluster_name_value", - "grid_image_id": "grid_image_id_value", - "node_count": 1070, - "enabled_ecpu_count_per_node": 2826, - "additional_ecpu_count_per_node": 3160, - "vm_file_system_storage": {"size_in_gbs_per_node": 2103}, - "license_model": 1, - "exascale_db_storage_vault": "exascale_db_storage_vault_value", - "hostname_prefix": "hostname_prefix_value", - "hostname": "hostname_value", - "ssh_public_keys": ["ssh_public_keys_value1", "ssh_public_keys_value2"], - "data_collection_options": { - "is_diagnostics_events_enabled": True, - "is_health_monitoring_enabled": True, - "is_incident_logs_enabled": True, - }, - "time_zone": {"id": "id_value", "version": "version_value"}, - "lifecycle_state": 1, - "shape_attribute": 1, - "memory_size_gb": 1499, - "scan_listener_port_tcp": 2356, - "oci_uri": "oci_uri_value", - "gi_version": "gi_version_value", - }, - "gcp_oracle_zone": "gcp_oracle_zone_value", - "labels": {}, - "odb_network": "odb_network_value", - "odb_subnet": "odb_subnet_value", - "backup_odb_subnet": "backup_odb_subnet_value", - "display_name": "display_name_value", - "create_time": {"seconds": 751, "nanos": 543}, - "entitlement_id": "entitlement_id_value", + "name": "projects/sample1/locations/sample2/goldengateDeploymentVersions/sample3" } - # The version of a generated dependency at test runtime may differ from the version used during generation. - # Delete any fields which are not present in the current runtime dependency - # See https://github.com/googleapis/gapic-generator-python/issues/1748 - - # Determine if the message type is proto-plus or protobuf - test_field = oracledatabase.UpdateExadbVmClusterRequest.meta.fields[ - "exadb_vm_cluster" - ] - - def get_message_fields(field): - # Given a field which is a message (composite type), return a list with - # all the fields of the message. - # If the field is not a composite type, return an empty list. - message_fields = [] - - if hasattr(field, "message") and field.message: - is_field_type_proto_plus_type = not hasattr(field.message, "DESCRIPTOR") - - if is_field_type_proto_plus_type: - message_fields = field.message.meta.fields.values() - # Add `# pragma: NO COVER` because there may not be any `*_pb2` field types - else: # pragma: NO COVER - message_fields = field.message.DESCRIPTOR.fields - return message_fields - - runtime_nested_fields = [ - (field.name, nested_field.name) - for field in get_message_fields(test_field) - for nested_field in get_message_fields(field) - ] - - subfields_not_in_runtime = [] - - # For each item in the sample request, create a list of sub fields which are not present at runtime - # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime - for field, value in request_init["exadb_vm_cluster"].items(): # pragma: NO COVER - result = None - is_repeated = False - # For repeated fields - if isinstance(value, list) and len(value): - is_repeated = True - result = value[0] - # For fields where the type is another message - if isinstance(value, dict): - result = value - - if result and hasattr(result, "keys"): - for subfield in result.keys(): - if (field, subfield) not in runtime_nested_fields: - subfields_not_in_runtime.append( - { - "field": field, - "subfield": subfield, - "is_repeated": is_repeated, - } - ) - - # Remove fields from the sample request which are not present in the runtime version of the dependency - # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime - for subfield_to_delete in subfields_not_in_runtime: # pragma: NO COVER - field = subfield_to_delete.get("field") - field_repeated = subfield_to_delete.get("is_repeated") - subfield = subfield_to_delete.get("subfield") - if subfield: - if field_repeated: - for i in range(0, len(request_init["exadb_vm_cluster"][field])): - del request_init["exadb_vm_cluster"][field][i][subfield] - else: - del request_init["exadb_vm_cluster"][field][subfield] request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = goldengate_deployment_version.GoldengateDeploymentVersion( + name="name_value", + ocid="ocid_value", + ) # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 - json_return_value = json_format.MessageToJson(return_value) - response_value.content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.update_exadb_vm_cluster(request) - - # Establish that the response is the type that we expect. - json_return_value = json_format.MessageToJson(return_value) - - -@pytest.mark.parametrize("null_interceptor", [True, False]) -def test_update_exadb_vm_cluster_rest_interceptors(null_interceptor): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials(), - interceptor=None - if null_interceptor - else transports.OracleDatabaseRestInterceptor(), - ) - client = OracleDatabaseClient(transport=transport) - - with ( - mock.patch.object(type(client.transport._session), "request") as req, - mock.patch.object(path_template, "transcode") as transcode, - mock.patch.object(operation.Operation, "_set_result_from_operation"), - mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_update_exadb_vm_cluster" - ) as post, - mock.patch.object( - transports.OracleDatabaseRestInterceptor, - "post_update_exadb_vm_cluster_with_metadata", - ) as post_with_metadata, - mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_update_exadb_vm_cluster" - ) as pre, - ): - pre.assert_not_called() - post.assert_not_called() - post_with_metadata.assert_not_called() - pb_message = oracledatabase.UpdateExadbVmClusterRequest.pb( - oracledatabase.UpdateExadbVmClusterRequest() - ) - transcode.return_value = { - "method": "post", - "uri": "my_uri", - "body": pb_message, - "query_params": pb_message, - } - - req.return_value = mock.Mock() - req.return_value.status_code = 200 - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = json_format.MessageToJson(operations_pb2.Operation()) - req.return_value.content = return_value - - request = oracledatabase.UpdateExadbVmClusterRequest() - metadata = [ - ("key", "val"), - ("cephalopod", "squid"), - ] - pre.return_value = request, metadata - post.return_value = operations_pb2.Operation() - post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.update_exadb_vm_cluster( - request, - metadata=[ - ("key", "val"), - ("cephalopod", "squid"), - ], + # Convert return value to protobuf type + return_value = goldengate_deployment_version.GoldengateDeploymentVersion.pb( + return_value ) - - pre.assert_called_once() - post.assert_called_once() - post_with_metadata.assert_called_once() - - -def test_remove_virtual_machine_exadb_vm_cluster_rest_bad_request( - request_type=oracledatabase.RemoveVirtualMachineExadbVmClusterRequest, -): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), transport="rest" - ) - # send a request that will satisfy transcoding - request_init = { - "name": "projects/sample1/locations/sample2/exadbVmClusters/sample3" - } - request = request_type(**request_init) - - # Mock the http request call within the method and fake a BadRequest error. - with ( - mock.patch.object(Session, "request") as req, - pytest.raises(core_exceptions.BadRequest), - ): - # Wrap the value into a proper Response obj - response_value = mock.Mock() - json_return_value = "" - response_value.json = mock.Mock(return_value={}) - response_value.status_code = 400 - response_value.request = mock.Mock() - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.remove_virtual_machine_exadb_vm_cluster(request) - - -@pytest.mark.parametrize( - "request_type", - [ - oracledatabase.RemoveVirtualMachineExadbVmClusterRequest, - dict, - ], -) -def test_remove_virtual_machine_exadb_vm_cluster_rest_call_success(request_type): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), transport="rest" - ) - - # send a request that will satisfy transcoding - request_init = { - "name": "projects/sample1/locations/sample2/exadbVmClusters/sample3" - } - request = request_type(**request_init) - - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") - - # Wrap the value into a proper Response obj - response_value = mock.Mock() - response_value.status_code = 200 json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.remove_virtual_machine_exadb_vm_cluster(request) + response = client.get_goldengate_deployment_version(request) # Establish that the response is the type that we expect. - json_return_value = json_format.MessageToJson(return_value) + assert isinstance( + response, goldengate_deployment_version.GoldengateDeploymentVersion + ) + assert response.name == "name_value" + assert response.ocid == "ocid_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_remove_virtual_machine_exadb_vm_cluster_rest_interceptors(null_interceptor): +def test_get_goldengate_deployment_version_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -48992,25 +69460,26 @@ def test_remove_virtual_machine_exadb_vm_cluster_rest_interceptors(null_intercep with ( mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, - mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_remove_virtual_machine_exadb_vm_cluster", + "post_get_goldengate_deployment_version", ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_remove_virtual_machine_exadb_vm_cluster_with_metadata", + "post_get_goldengate_deployment_version_with_metadata", ) as post_with_metadata, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "pre_remove_virtual_machine_exadb_vm_cluster", + "pre_get_goldengate_deployment_version", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = oracledatabase.RemoveVirtualMachineExadbVmClusterRequest.pb( - oracledatabase.RemoveVirtualMachineExadbVmClusterRequest() + pb_message = ( + goldengate_deployment_version.GetGoldengateDeploymentVersionRequest.pb( + goldengate_deployment_version.GetGoldengateDeploymentVersionRequest() + ) ) transcode.return_value = { "method": "post", @@ -49022,19 +69491,26 @@ def test_remove_virtual_machine_exadb_vm_cluster_rest_interceptors(null_intercep req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = json_format.MessageToJson(operations_pb2.Operation()) + return_value = ( + goldengate_deployment_version.GoldengateDeploymentVersion.to_json( + goldengate_deployment_version.GoldengateDeploymentVersion() + ) + ) req.return_value.content = return_value - request = oracledatabase.RemoveVirtualMachineExadbVmClusterRequest() + request = goldengate_deployment_version.GetGoldengateDeploymentVersionRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = operations_pb2.Operation() - post_with_metadata.return_value = operations_pb2.Operation(), metadata + post.return_value = goldengate_deployment_version.GoldengateDeploymentVersion() + post_with_metadata.return_value = ( + goldengate_deployment_version.GoldengateDeploymentVersion(), + metadata, + ) - client.remove_virtual_machine_exadb_vm_cluster( + client.get_goldengate_deployment_version( request, metadata=[ ("key", "val"), @@ -49047,8 +69523,8 @@ def test_remove_virtual_machine_exadb_vm_cluster_rest_interceptors(null_intercep post_with_metadata.assert_called_once() -def test_list_exascale_db_storage_vaults_rest_bad_request( - request_type=exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest, +def test_list_goldengate_deployment_versions_rest_bad_request( + request_type=goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" @@ -49070,17 +69546,17 @@ def test_list_exascale_db_storage_vaults_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_exascale_db_storage_vaults(request) + client.list_goldengate_deployment_versions(request) @pytest.mark.parametrize( "request_type", [ - exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest, + goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest, dict, ], ) -def test_list_exascale_db_storage_vaults_rest_call_success(request_type): +def test_list_goldengate_deployment_versions_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) @@ -49092,8 +69568,11 @@ def test_list_exascale_db_storage_vaults_rest_call_success(request_type): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse( - next_page_token="next_page_token_value", + return_value = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) ) # Wrap the value into a proper Response obj @@ -49101,22 +69580,25 @@ def test_list_exascale_db_storage_vaults_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse.pb( - return_value + return_value = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse.pb( + return_value + ) ) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_exascale_db_storage_vaults(request) + response = client.list_goldengate_deployment_versions(request) # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListExascaleDbStorageVaultsPager) + assert isinstance(response, pagers.ListGoldengateDeploymentVersionsPager) assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_exascale_db_storage_vaults_rest_interceptors(null_interceptor): +def test_list_goldengate_deployment_versions_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -49130,22 +69612,24 @@ def test_list_exascale_db_storage_vaults_rest_interceptors(null_interceptor): mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_list_exascale_db_storage_vaults", + "post_list_goldengate_deployment_versions", ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_list_exascale_db_storage_vaults_with_metadata", + "post_list_goldengate_deployment_versions_with_metadata", ) as post_with_metadata, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "pre_list_exascale_db_storage_vaults", + "pre_list_goldengate_deployment_versions", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest.pb( - exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest() + pb_message = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest.pb( + goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest() + ) ) transcode.return_value = { "method": "post", @@ -49157,28 +69641,28 @@ def test_list_exascale_db_storage_vaults_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = ( - exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse.to_json( - exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse() - ) + return_value = goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse.to_json( + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse() ) req.return_value.content = return_value - request = exascale_db_storage_vault.ListExascaleDbStorageVaultsRequest() + request = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest() + ) metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata post.return_value = ( - exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse() + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse() ) post_with_metadata.return_value = ( - exascale_db_storage_vault.ListExascaleDbStorageVaultsResponse(), + goldengate_deployment_version.ListGoldengateDeploymentVersionsResponse(), metadata, ) - client.list_exascale_db_storage_vaults( + client.list_goldengate_deployment_versions( request, metadata=[ ("key", "val"), @@ -49191,15 +69675,15 @@ def test_list_exascale_db_storage_vaults_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_get_exascale_db_storage_vault_rest_bad_request( - request_type=exascale_db_storage_vault.GetExascaleDbStorageVaultRequest, +def test_get_goldengate_deployment_type_rest_bad_request( + request_type=goldengate_deployment_type.GetGoldengateDeploymentTypeRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/exascaleDbStorageVaults/sample3" + "name": "projects/sample1/locations/sample2/goldengateDeploymentTypes/sample3" } request = request_type(**request_init) @@ -49216,35 +69700,42 @@ def test_get_exascale_db_storage_vault_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_exascale_db_storage_vault(request) + client.get_goldengate_deployment_type(request) @pytest.mark.parametrize( "request_type", [ - exascale_db_storage_vault.GetExascaleDbStorageVaultRequest, + goldengate_deployment_type.GetGoldengateDeploymentTypeRequest, dict, ], ) -def test_get_exascale_db_storage_vault_rest_call_success(request_type): +def test_get_goldengate_deployment_type_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/exascaleDbStorageVaults/sample3" + "name": "projects/sample1/locations/sample2/goldengateDeploymentTypes/sample3" } request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = exascale_db_storage_vault.ExascaleDbStorageVault( + return_value = goldengate_deployment_type.GoldengateDeploymentType( name="name_value", + deployment_type=goldengate_deployment_type.GoldengateDeploymentType.DeploymentType.OGG, + category=goldengate_deployment_type.GoldengateDeploymentType.DeploymentCategory.DATA_REPLICATION_CATEGORY, + connection_types=["connection_types_value"], display_name="display_name_value", - gcp_oracle_zone="gcp_oracle_zone_value", - entitlement_id="entitlement_id_value", + ogg_version="ogg_version_value", + source_technologies=["source_technologies_value"], + supported_capabilities=["supported_capabilities_value"], + supported_technologies_url="supported_technologies_url_value", + target_technologies=["target_technologies_value"], + default_username="default_username_value", ) # Wrap the value into a proper Response obj @@ -49252,23 +69743,38 @@ def test_get_exascale_db_storage_vault_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = exascale_db_storage_vault.ExascaleDbStorageVault.pb(return_value) + return_value = goldengate_deployment_type.GoldengateDeploymentType.pb( + return_value + ) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_exascale_db_storage_vault(request) + response = client.get_goldengate_deployment_type(request) # Establish that the response is the type that we expect. - assert isinstance(response, exascale_db_storage_vault.ExascaleDbStorageVault) + assert isinstance(response, goldengate_deployment_type.GoldengateDeploymentType) assert response.name == "name_value" + assert ( + response.deployment_type + == goldengate_deployment_type.GoldengateDeploymentType.DeploymentType.OGG + ) + assert ( + response.category + == goldengate_deployment_type.GoldengateDeploymentType.DeploymentCategory.DATA_REPLICATION_CATEGORY + ) + assert response.connection_types == ["connection_types_value"] assert response.display_name == "display_name_value" - assert response.gcp_oracle_zone == "gcp_oracle_zone_value" - assert response.entitlement_id == "entitlement_id_value" + assert response.ogg_version == "ogg_version_value" + assert response.source_technologies == ["source_technologies_value"] + assert response.supported_capabilities == ["supported_capabilities_value"] + assert response.supported_technologies_url == "supported_technologies_url_value" + assert response.target_technologies == ["target_technologies_value"] + assert response.default_username == "default_username_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_get_exascale_db_storage_vault_rest_interceptors(null_interceptor): +def test_get_goldengate_deployment_type_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -49282,22 +69788,22 @@ def test_get_exascale_db_storage_vault_rest_interceptors(null_interceptor): mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_get_exascale_db_storage_vault", + "post_get_goldengate_deployment_type", ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_get_exascale_db_storage_vault_with_metadata", + "post_get_goldengate_deployment_type_with_metadata", ) as post_with_metadata, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "pre_get_exascale_db_storage_vault", + "pre_get_goldengate_deployment_type", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = exascale_db_storage_vault.GetExascaleDbStorageVaultRequest.pb( - exascale_db_storage_vault.GetExascaleDbStorageVaultRequest() + pb_message = goldengate_deployment_type.GetGoldengateDeploymentTypeRequest.pb( + goldengate_deployment_type.GetGoldengateDeploymentTypeRequest() ) transcode.return_value = { "method": "post", @@ -49309,24 +69815,24 @@ def test_get_exascale_db_storage_vault_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = exascale_db_storage_vault.ExascaleDbStorageVault.to_json( - exascale_db_storage_vault.ExascaleDbStorageVault() + return_value = goldengate_deployment_type.GoldengateDeploymentType.to_json( + goldengate_deployment_type.GoldengateDeploymentType() ) req.return_value.content = return_value - request = exascale_db_storage_vault.GetExascaleDbStorageVaultRequest() + request = goldengate_deployment_type.GetGoldengateDeploymentTypeRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = exascale_db_storage_vault.ExascaleDbStorageVault() + post.return_value = goldengate_deployment_type.GoldengateDeploymentType() post_with_metadata.return_value = ( - exascale_db_storage_vault.ExascaleDbStorageVault(), + goldengate_deployment_type.GoldengateDeploymentType(), metadata, ) - client.get_exascale_db_storage_vault( + client.get_goldengate_deployment_type( request, metadata=[ ("key", "val"), @@ -49339,8 +69845,8 @@ def test_get_exascale_db_storage_vault_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_create_exascale_db_storage_vault_rest_bad_request( - request_type=gco_exascale_db_storage_vault.CreateExascaleDbStorageVaultRequest, +def test_list_goldengate_deployment_types_rest_bad_request( + request_type=goldengate_deployment_type.ListGoldengateDeploymentTypesRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" @@ -49362,144 +69868,57 @@ def test_create_exascale_db_storage_vault_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.create_exascale_db_storage_vault(request) + client.list_goldengate_deployment_types(request) @pytest.mark.parametrize( "request_type", [ - gco_exascale_db_storage_vault.CreateExascaleDbStorageVaultRequest, + goldengate_deployment_type.ListGoldengateDeploymentTypesRequest, dict, ], ) -def test_create_exascale_db_storage_vault_rest_call_success(request_type): +def test_list_goldengate_deployment_types_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = {"parent": "projects/sample1/locations/sample2"} - request_init["exascale_db_storage_vault"] = { - "name": "name_value", - "display_name": "display_name_value", - "gcp_oracle_zone": "gcp_oracle_zone_value", - "properties": { - "ocid": "ocid_value", - "time_zone": {"id": "id_value", "version": "version_value"}, - "exascale_db_storage_details": { - "available_size_gbs": 1878, - "total_size_gbs": 1497, - }, - "state": 1, - "description": "description_value", - "vm_cluster_ids": ["vm_cluster_ids_value1", "vm_cluster_ids_value2"], - "vm_cluster_count": 1740, - "additional_flash_cache_percent": 3113, - "oci_uri": "oci_uri_value", - "attached_shape_attributes": [1], - "available_shape_attributes": [1], - }, - "create_time": {"seconds": 751, "nanos": 543}, - "entitlement_id": "entitlement_id_value", - "labels": {}, - } - # The version of a generated dependency at test runtime may differ from the version used during generation. - # Delete any fields which are not present in the current runtime dependency - # See https://github.com/googleapis/gapic-generator-python/issues/1748 - - # Determine if the message type is proto-plus or protobuf - test_field = ( - gco_exascale_db_storage_vault.CreateExascaleDbStorageVaultRequest.meta.fields[ - "exascale_db_storage_vault" - ] - ) - - def get_message_fields(field): - # Given a field which is a message (composite type), return a list with - # all the fields of the message. - # If the field is not a composite type, return an empty list. - message_fields = [] - - if hasattr(field, "message") and field.message: - is_field_type_proto_plus_type = not hasattr(field.message, "DESCRIPTOR") - - if is_field_type_proto_plus_type: - message_fields = field.message.meta.fields.values() - # Add `# pragma: NO COVER` because there may not be any `*_pb2` field types - else: # pragma: NO COVER - message_fields = field.message.DESCRIPTOR.fields - return message_fields - - runtime_nested_fields = [ - (field.name, nested_field.name) - for field in get_message_fields(test_field) - for nested_field in get_message_fields(field) - ] - - subfields_not_in_runtime = [] - - # For each item in the sample request, create a list of sub fields which are not present at runtime - # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime - for field, value in request_init[ - "exascale_db_storage_vault" - ].items(): # pragma: NO COVER - result = None - is_repeated = False - # For repeated fields - if isinstance(value, list) and len(value): - is_repeated = True - result = value[0] - # For fields where the type is another message - if isinstance(value, dict): - result = value - - if result and hasattr(result, "keys"): - for subfield in result.keys(): - if (field, subfield) not in runtime_nested_fields: - subfields_not_in_runtime.append( - { - "field": field, - "subfield": subfield, - "is_repeated": is_repeated, - } - ) - - # Remove fields from the sample request which are not present in the runtime version of the dependency - # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime - for subfield_to_delete in subfields_not_in_runtime: # pragma: NO COVER - field = subfield_to_delete.get("field") - field_repeated = subfield_to_delete.get("is_repeated") - subfield = subfield_to_delete.get("subfield") - if subfield: - if field_repeated: - for i in range( - 0, len(request_init["exascale_db_storage_vault"][field]) - ): - del request_init["exascale_db_storage_vault"][field][i][subfield] - else: - del request_init["exascale_db_storage_vault"][field][subfield] request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = goldengate_deployment_type.ListGoldengateDeploymentTypesResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], + ) # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = ( + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse.pb( + return_value + ) + ) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.create_exascale_db_storage_vault(request) + response = client.list_goldengate_deployment_types(request) # Establish that the response is the type that we expect. - json_return_value = json_format.MessageToJson(return_value) + assert isinstance(response, pagers.ListGoldengateDeploymentTypesPager) + assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_create_exascale_db_storage_vault_rest_interceptors(null_interceptor): +def test_list_goldengate_deployment_types_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -49511,27 +69930,24 @@ def test_create_exascale_db_storage_vault_rest_interceptors(null_interceptor): with ( mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, - mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_create_exascale_db_storage_vault", + "post_list_goldengate_deployment_types", ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_create_exascale_db_storage_vault_with_metadata", + "post_list_goldengate_deployment_types_with_metadata", ) as post_with_metadata, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "pre_create_exascale_db_storage_vault", + "pre_list_goldengate_deployment_types", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = ( - gco_exascale_db_storage_vault.CreateExascaleDbStorageVaultRequest.pb( - gco_exascale_db_storage_vault.CreateExascaleDbStorageVaultRequest() - ) + pb_message = goldengate_deployment_type.ListGoldengateDeploymentTypesRequest.pb( + goldengate_deployment_type.ListGoldengateDeploymentTypesRequest() ) transcode.return_value = { "method": "post", @@ -49543,19 +69959,28 @@ def test_create_exascale_db_storage_vault_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = json_format.MessageToJson(operations_pb2.Operation()) + return_value = ( + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse.to_json( + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse() + ) + ) req.return_value.content = return_value - request = gco_exascale_db_storage_vault.CreateExascaleDbStorageVaultRequest() + request = goldengate_deployment_type.ListGoldengateDeploymentTypesRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = operations_pb2.Operation() - post_with_metadata.return_value = operations_pb2.Operation(), metadata + post.return_value = ( + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse() + ) + post_with_metadata.return_value = ( + goldengate_deployment_type.ListGoldengateDeploymentTypesResponse(), + metadata, + ) - client.create_exascale_db_storage_vault( + client.list_goldengate_deployment_types( request, metadata=[ ("key", "val"), @@ -49568,15 +69993,15 @@ def test_create_exascale_db_storage_vault_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_delete_exascale_db_storage_vault_rest_bad_request( - request_type=exascale_db_storage_vault.DeleteExascaleDbStorageVaultRequest, +def test_get_goldengate_deployment_environment_rest_bad_request( + request_type=goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/exascaleDbStorageVaults/sample3" + "name": "projects/sample1/locations/sample2/goldengateDeploymentEnvironments/sample3" } request = request_type(**request_init) @@ -49593,47 +70018,85 @@ def test_delete_exascale_db_storage_vault_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.delete_exascale_db_storage_vault(request) + client.get_goldengate_deployment_environment(request) @pytest.mark.parametrize( "request_type", [ - exascale_db_storage_vault.DeleteExascaleDbStorageVaultRequest, + goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest, dict, ], ) -def test_delete_exascale_db_storage_vault_rest_call_success(request_type): +def test_get_goldengate_deployment_environment_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = { - "name": "projects/sample1/locations/sample2/exascaleDbStorageVaults/sample3" + "name": "projects/sample1/locations/sample2/goldengateDeploymentEnvironments/sample3" } request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = operations_pb2.Operation(name="operations/spam") + return_value = goldengate_deployment_environment.GoldengateDeploymentEnvironment( + name="name_value", + category=goldengate_deployment_environment.GoldengateDeploymentEnvironment.DeploymentCategory.DATA_REPLICATION_CATEGORY, + display_name="display_name_value", + default_cpu_core_count=2332, + environment_type=goldengate_deployment_environment.GoldengateDeploymentEnvironment.DeploymentEnvironmentType.PRODUCTION, + auto_scaling_enabled=True, + max_cpu_core_count=1917, + memory_gb_per_cpu_core=2326, + min_cpu_core_count=1915, + network_bandwidth_gbps_per_cpu_core=3710, + storage_usage_limit_gb_per_cpu_core=3684, + ) # Wrap the value into a proper Response obj response_value = mock.Mock() response_value.status_code = 200 + + # Convert return value to protobuf type + return_value = ( + goldengate_deployment_environment.GoldengateDeploymentEnvironment.pb( + return_value + ) + ) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.delete_exascale_db_storage_vault(request) + response = client.get_goldengate_deployment_environment(request) # Establish that the response is the type that we expect. - json_return_value = json_format.MessageToJson(return_value) + assert isinstance( + response, goldengate_deployment_environment.GoldengateDeploymentEnvironment + ) + assert response.name == "name_value" + assert ( + response.category + == goldengate_deployment_environment.GoldengateDeploymentEnvironment.DeploymentCategory.DATA_REPLICATION_CATEGORY + ) + assert response.display_name == "display_name_value" + assert response.default_cpu_core_count == 2332 + assert ( + response.environment_type + == goldengate_deployment_environment.GoldengateDeploymentEnvironment.DeploymentEnvironmentType.PRODUCTION + ) + assert response.auto_scaling_enabled is True + assert response.max_cpu_core_count == 1917 + assert response.memory_gb_per_cpu_core == 2326 + assert response.min_cpu_core_count == 1915 + assert response.network_bandwidth_gbps_per_cpu_core == 3710 + assert response.storage_usage_limit_gb_per_cpu_core == 3684 @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_delete_exascale_db_storage_vault_rest_interceptors(null_interceptor): +def test_get_goldengate_deployment_environment_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -49645,25 +70108,24 @@ def test_delete_exascale_db_storage_vault_rest_interceptors(null_interceptor): with ( mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, - mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_delete_exascale_db_storage_vault", + "post_get_goldengate_deployment_environment", ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_delete_exascale_db_storage_vault_with_metadata", + "post_get_goldengate_deployment_environment_with_metadata", ) as post_with_metadata, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "pre_delete_exascale_db_storage_vault", + "pre_get_goldengate_deployment_environment", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = exascale_db_storage_vault.DeleteExascaleDbStorageVaultRequest.pb( - exascale_db_storage_vault.DeleteExascaleDbStorageVaultRequest() + pb_message = goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest.pb( + goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest() ) transcode.return_value = { "method": "post", @@ -49675,19 +70137,28 @@ def test_delete_exascale_db_storage_vault_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = json_format.MessageToJson(operations_pb2.Operation()) + return_value = ( + goldengate_deployment_environment.GoldengateDeploymentEnvironment.to_json( + goldengate_deployment_environment.GoldengateDeploymentEnvironment() + ) + ) req.return_value.content = return_value - request = exascale_db_storage_vault.DeleteExascaleDbStorageVaultRequest() + request = goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = operations_pb2.Operation() - post_with_metadata.return_value = operations_pb2.Operation(), metadata + post.return_value = ( + goldengate_deployment_environment.GoldengateDeploymentEnvironment() + ) + post_with_metadata.return_value = ( + goldengate_deployment_environment.GoldengateDeploymentEnvironment(), + metadata, + ) - client.delete_exascale_db_storage_vault( + client.get_goldengate_deployment_environment( request, metadata=[ ("key", "val"), @@ -49700,8 +70171,8 @@ def test_delete_exascale_db_storage_vault_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_list_db_system_initial_storage_sizes_rest_bad_request( - request_type=db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest, +def test_list_goldengate_deployment_environments_rest_bad_request( + request_type=goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" @@ -49723,17 +70194,17 @@ def test_list_db_system_initial_storage_sizes_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_db_system_initial_storage_sizes(request) + client.list_goldengate_deployment_environments(request) @pytest.mark.parametrize( "request_type", [ - db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest, + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest, dict, ], ) -def test_list_db_system_initial_storage_sizes_rest_call_success(request_type): +def test_list_goldengate_deployment_environments_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) @@ -49745,10 +70216,9 @@ def test_list_db_system_initial_storage_sizes_rest_call_success(request_type): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = ( - db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse( - next_page_token="next_page_token_value", - ) + return_value = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], ) # Wrap the value into a proper Response obj @@ -49756,24 +70226,23 @@ def test_list_db_system_initial_storage_sizes_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = ( - db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse.pb( - return_value - ) + return_value = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse.pb( + return_value ) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_db_system_initial_storage_sizes(request) + response = client.list_goldengate_deployment_environments(request) # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListDbSystemInitialStorageSizesPager) + assert isinstance(response, pagers.ListGoldengateDeploymentEnvironmentsPager) assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_db_system_initial_storage_sizes_rest_interceptors(null_interceptor): +def test_list_goldengate_deployment_environments_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -49787,24 +70256,22 @@ def test_list_db_system_initial_storage_sizes_rest_interceptors(null_interceptor mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_list_db_system_initial_storage_sizes", + "post_list_goldengate_deployment_environments", ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_list_db_system_initial_storage_sizes_with_metadata", + "post_list_goldengate_deployment_environments_with_metadata", ) as post_with_metadata, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "pre_list_db_system_initial_storage_sizes", + "pre_list_goldengate_deployment_environments", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = ( - db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest.pb( - db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest() - ) + pb_message = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest.pb( + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest() ) transcode.return_value = { "method": "post", @@ -49816,28 +70283,24 @@ def test_list_db_system_initial_storage_sizes_rest_interceptors(null_interceptor req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse.to_json( - db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse() + return_value = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse.to_json( + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse() ) req.return_value.content = return_value - request = ( - db_system_initial_storage_size.ListDbSystemInitialStorageSizesRequest() - ) + request = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = ( - db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse() - ) + post.return_value = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse() post_with_metadata.return_value = ( - db_system_initial_storage_size.ListDbSystemInitialStorageSizesResponse(), + goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsResponse(), metadata, ) - client.list_db_system_initial_storage_sizes( + client.list_goldengate_deployment_environments( request, metadata=[ ("key", "val"), @@ -49850,12 +70313,16 @@ def test_list_db_system_initial_storage_sizes_rest_interceptors(null_interceptor post_with_metadata.assert_called_once() -def test_list_databases_rest_bad_request(request_type=database.ListDatabasesRequest): +def test_get_goldengate_connection_type_rest_bad_request( + request_type=goldengate_connection_type.GetGoldengateConnectionTypeRequest, +): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2"} + request_init = { + "name": "projects/sample1/locations/sample2/goldengateConnectionTypes/sample3" + } request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -49871,30 +70338,34 @@ def test_list_databases_rest_bad_request(request_type=database.ListDatabasesRequ response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_databases(request) + client.get_goldengate_connection_type(request) @pytest.mark.parametrize( "request_type", [ - database.ListDatabasesRequest, + goldengate_connection_type.GetGoldengateConnectionTypeRequest, dict, ], ) -def test_list_databases_rest_call_success(request_type): +def test_get_goldengate_connection_type_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2"} + request_init = { + "name": "projects/sample1/locations/sample2/goldengateConnectionTypes/sample3" + } request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = database.ListDatabasesResponse( - next_page_token="next_page_token_value", + return_value = goldengate_connection_type.GoldengateConnectionType( + name="name_value", + connection_type=goldengate_connection_type.GoldengateConnectionType.ConnectionType.GOLDENGATE, + technology_types=["technology_types_value"], ) # Wrap the value into a proper Response obj @@ -49902,20 +70373,27 @@ def test_list_databases_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = database.ListDatabasesResponse.pb(return_value) + return_value = goldengate_connection_type.GoldengateConnectionType.pb( + return_value + ) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_databases(request) + response = client.get_goldengate_connection_type(request) # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListDatabasesPager) - assert response.next_page_token == "next_page_token_value" + assert isinstance(response, goldengate_connection_type.GoldengateConnectionType) + assert response.name == "name_value" + assert ( + response.connection_type + == goldengate_connection_type.GoldengateConnectionType.ConnectionType.GOLDENGATE + ) + assert response.technology_types == ["technology_types_value"] @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_databases_rest_interceptors(null_interceptor): +def test_get_goldengate_connection_type_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -49928,20 +70406,24 @@ def test_list_databases_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_list_databases" + transports.OracleDatabaseRestInterceptor, + "post_get_goldengate_connection_type", ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_list_databases_with_metadata", + "post_get_goldengate_connection_type_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_list_databases" + transports.OracleDatabaseRestInterceptor, + "pre_get_goldengate_connection_type", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = database.ListDatabasesRequest.pb(database.ListDatabasesRequest()) + pb_message = goldengate_connection_type.GetGoldengateConnectionTypeRequest.pb( + goldengate_connection_type.GetGoldengateConnectionTypeRequest() + ) transcode.return_value = { "method": "post", "uri": "my_uri", @@ -49952,21 +70434,24 @@ def test_list_databases_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = database.ListDatabasesResponse.to_json( - database.ListDatabasesResponse() + return_value = goldengate_connection_type.GoldengateConnectionType.to_json( + goldengate_connection_type.GoldengateConnectionType() ) req.return_value.content = return_value - request = database.ListDatabasesRequest() + request = goldengate_connection_type.GetGoldengateConnectionTypeRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = database.ListDatabasesResponse() - post_with_metadata.return_value = database.ListDatabasesResponse(), metadata + post.return_value = goldengate_connection_type.GoldengateConnectionType() + post_with_metadata.return_value = ( + goldengate_connection_type.GoldengateConnectionType(), + metadata, + ) - client.list_databases( + client.get_goldengate_connection_type( request, metadata=[ ("key", "val"), @@ -49979,12 +70464,14 @@ def test_list_databases_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_get_database_rest_bad_request(request_type=database.GetDatabaseRequest): +def test_list_goldengate_connection_types_rest_bad_request( + request_type=goldengate_connection_type.ListGoldengateConnectionTypesRequest, +): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"name": "projects/sample1/locations/sample2/databases/sample3"} + request_init = {"parent": "projects/sample1/locations/sample2"} request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -50000,41 +70487,31 @@ def test_get_database_rest_bad_request(request_type=database.GetDatabaseRequest) response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_database(request) + client.list_goldengate_connection_types(request) @pytest.mark.parametrize( "request_type", [ - database.GetDatabaseRequest, + goldengate_connection_type.ListGoldengateConnectionTypesRequest, dict, ], ) -def test_get_database_rest_call_success(request_type): +def test_list_goldengate_connection_types_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"name": "projects/sample1/locations/sample2/databases/sample3"} + request_init = {"parent": "projects/sample1/locations/sample2"} request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = database.Database( - name="name_value", - db_name="db_name_value", - db_unique_name="db_unique_name_value", - admin_password="admin_password_value", - tde_wallet_password="tde_wallet_password_value", - character_set="character_set_value", - ncharacter_set="ncharacter_set_value", - oci_url="oci_url_value", - database_id="database_id_value", - db_home_name="db_home_name_value", - gcp_oracle_zone="gcp_oracle_zone_value", - ops_insights_status=database.Database.OperationsInsightsStatus.ENABLING, + return_value = goldengate_connection_type.ListGoldengateConnectionTypesResponse( + next_page_token="next_page_token_value", + unreachable=["unreachable_value"], ) # Wrap the value into a proper Response obj @@ -50042,34 +70519,25 @@ def test_get_database_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = database.Database.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) - response_value.content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_database(request) - - # Establish that the response is the type that we expect. - assert isinstance(response, database.Database) - assert response.name == "name_value" - assert response.db_name == "db_name_value" - assert response.db_unique_name == "db_unique_name_value" - assert response.admin_password == "admin_password_value" - assert response.tde_wallet_password == "tde_wallet_password_value" - assert response.character_set == "character_set_value" - assert response.ncharacter_set == "ncharacter_set_value" - assert response.oci_url == "oci_url_value" - assert response.database_id == "database_id_value" - assert response.db_home_name == "db_home_name_value" - assert response.gcp_oracle_zone == "gcp_oracle_zone_value" - assert ( - response.ops_insights_status - == database.Database.OperationsInsightsStatus.ENABLING - ) + return_value = ( + goldengate_connection_type.ListGoldengateConnectionTypesResponse.pb( + return_value + ) + ) + json_return_value = json_format.MessageToJson(return_value) + response_value.content = json_return_value.encode("UTF-8") + req.return_value = response_value + req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} + response = client.list_goldengate_connection_types(request) + + # Establish that the response is the type that we expect. + assert isinstance(response, pagers.ListGoldengateConnectionTypesPager) + assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_get_database_rest_interceptors(null_interceptor): +def test_list_goldengate_connection_types_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -50082,19 +70550,24 @@ def test_get_database_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_get_database" + transports.OracleDatabaseRestInterceptor, + "post_list_goldengate_connection_types", ) as post, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_get_database_with_metadata" + transports.OracleDatabaseRestInterceptor, + "post_list_goldengate_connection_types_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_get_database" + transports.OracleDatabaseRestInterceptor, + "pre_list_goldengate_connection_types", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = database.GetDatabaseRequest.pb(database.GetDatabaseRequest()) + pb_message = goldengate_connection_type.ListGoldengateConnectionTypesRequest.pb( + goldengate_connection_type.ListGoldengateConnectionTypesRequest() + ) transcode.return_value = { "method": "post", "uri": "my_uri", @@ -50105,19 +70578,28 @@ def test_get_database_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = database.Database.to_json(database.Database()) + return_value = ( + goldengate_connection_type.ListGoldengateConnectionTypesResponse.to_json( + goldengate_connection_type.ListGoldengateConnectionTypesResponse() + ) + ) req.return_value.content = return_value - request = database.GetDatabaseRequest() + request = goldengate_connection_type.ListGoldengateConnectionTypesRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = database.Database() - post_with_metadata.return_value = database.Database(), metadata + post.return_value = ( + goldengate_connection_type.ListGoldengateConnectionTypesResponse() + ) + post_with_metadata.return_value = ( + goldengate_connection_type.ListGoldengateConnectionTypesResponse(), + metadata, + ) - client.get_database( + client.list_goldengate_connection_types( request, metadata=[ ("key", "val"), @@ -50130,8 +70612,8 @@ def test_get_database_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_list_pluggable_databases_rest_bad_request( - request_type=pluggable_database.ListPluggableDatabasesRequest, +def test_list_db_versions_rest_bad_request( + request_type=db_version.ListDbVersionsRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" @@ -50153,17 +70635,17 @@ def test_list_pluggable_databases_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_pluggable_databases(request) + client.list_db_versions(request) @pytest.mark.parametrize( "request_type", [ - pluggable_database.ListPluggableDatabasesRequest, + db_version.ListDbVersionsRequest, dict, ], ) -def test_list_pluggable_databases_rest_call_success(request_type): +def test_list_db_versions_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) @@ -50175,7 +70657,7 @@ def test_list_pluggable_databases_rest_call_success(request_type): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = pluggable_database.ListPluggableDatabasesResponse( + return_value = db_version.ListDbVersionsResponse( next_page_token="next_page_token_value", ) @@ -50184,22 +70666,20 @@ def test_list_pluggable_databases_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = pluggable_database.ListPluggableDatabasesResponse.pb( - return_value - ) + return_value = db_version.ListDbVersionsResponse.pb(return_value) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_pluggable_databases(request) + response = client.list_db_versions(request) # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListPluggableDatabasesPager) + assert isinstance(response, pagers.ListDbVersionsPager) assert response.next_page_token == "next_page_token_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_pluggable_databases_rest_interceptors(null_interceptor): +def test_list_db_versions_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -50212,21 +70692,21 @@ def test_list_pluggable_databases_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_list_pluggable_databases" + transports.OracleDatabaseRestInterceptor, "post_list_db_versions" ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_list_pluggable_databases_with_metadata", + "post_list_db_versions_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_list_pluggable_databases" + transports.OracleDatabaseRestInterceptor, "pre_list_db_versions" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = pluggable_database.ListPluggableDatabasesRequest.pb( - pluggable_database.ListPluggableDatabasesRequest() + pb_message = db_version.ListDbVersionsRequest.pb( + db_version.ListDbVersionsRequest() ) transcode.return_value = { "method": "post", @@ -50238,24 +70718,21 @@ def test_list_pluggable_databases_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = pluggable_database.ListPluggableDatabasesResponse.to_json( - pluggable_database.ListPluggableDatabasesResponse() + return_value = db_version.ListDbVersionsResponse.to_json( + db_version.ListDbVersionsResponse() ) req.return_value.content = return_value - request = pluggable_database.ListPluggableDatabasesRequest() + request = db_version.ListDbVersionsRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = pluggable_database.ListPluggableDatabasesResponse() - post_with_metadata.return_value = ( - pluggable_database.ListPluggableDatabasesResponse(), - metadata, - ) + post.return_value = db_version.ListDbVersionsResponse() + post_with_metadata.return_value = db_version.ListDbVersionsResponse(), metadata - client.list_pluggable_databases( + client.list_db_versions( request, metadata=[ ("key", "val"), @@ -50268,16 +70745,14 @@ def test_list_pluggable_databases_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_get_pluggable_database_rest_bad_request( - request_type=pluggable_database.GetPluggableDatabaseRequest, +def test_list_database_character_sets_rest_bad_request( + request_type=database_character_set.ListDatabaseCharacterSetsRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "name": "projects/sample1/locations/sample2/pluggableDatabases/sample3" - } + request_init = {"parent": "projects/sample1/locations/sample2"} request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -50293,33 +70768,30 @@ def test_get_pluggable_database_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_pluggable_database(request) + client.list_database_character_sets(request) @pytest.mark.parametrize( "request_type", [ - pluggable_database.GetPluggableDatabaseRequest, + database_character_set.ListDatabaseCharacterSetsRequest, dict, ], ) -def test_get_pluggable_database_rest_call_success(request_type): +def test_list_database_character_sets_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = { - "name": "projects/sample1/locations/sample2/pluggableDatabases/sample3" - } + request_init = {"parent": "projects/sample1/locations/sample2"} request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = pluggable_database.PluggableDatabase( - name="name_value", - oci_url="oci_url_value", + return_value = database_character_set.ListDatabaseCharacterSetsResponse( + next_page_token="next_page_token_value", ) # Wrap the value into a proper Response obj @@ -50327,21 +70799,22 @@ def test_get_pluggable_database_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = pluggable_database.PluggableDatabase.pb(return_value) + return_value = database_character_set.ListDatabaseCharacterSetsResponse.pb( + return_value + ) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_pluggable_database(request) + response = client.list_database_character_sets(request) # Establish that the response is the type that we expect. - assert isinstance(response, pluggable_database.PluggableDatabase) - assert response.name == "name_value" - assert response.oci_url == "oci_url_value" + assert isinstance(response, pagers.ListDatabaseCharacterSetsPager) + assert response.next_page_token == "next_page_token_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_get_pluggable_database_rest_interceptors(null_interceptor): +def test_list_database_character_sets_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -50354,21 +70827,22 @@ def test_get_pluggable_database_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_get_pluggable_database" + transports.OracleDatabaseRestInterceptor, + "post_list_database_character_sets", ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_get_pluggable_database_with_metadata", + "post_list_database_character_sets_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_get_pluggable_database" + transports.OracleDatabaseRestInterceptor, "pre_list_database_character_sets" ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = pluggable_database.GetPluggableDatabaseRequest.pb( - pluggable_database.GetPluggableDatabaseRequest() + pb_message = database_character_set.ListDatabaseCharacterSetsRequest.pb( + database_character_set.ListDatabaseCharacterSetsRequest() ) transcode.return_value = { "method": "post", @@ -50380,24 +70854,24 @@ def test_get_pluggable_database_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = pluggable_database.PluggableDatabase.to_json( - pluggable_database.PluggableDatabase() + return_value = database_character_set.ListDatabaseCharacterSetsResponse.to_json( + database_character_set.ListDatabaseCharacterSetsResponse() ) req.return_value.content = return_value - request = pluggable_database.GetPluggableDatabaseRequest() + request = database_character_set.ListDatabaseCharacterSetsRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = pluggable_database.PluggableDatabase() + post.return_value = database_character_set.ListDatabaseCharacterSetsResponse() post_with_metadata.return_value = ( - pluggable_database.PluggableDatabase(), + database_character_set.ListDatabaseCharacterSetsResponse(), metadata, ) - client.get_pluggable_database( + client.list_database_character_sets( request, metadata=[ ("key", "val"), @@ -50410,7 +70884,9 @@ def test_get_pluggable_database_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_list_db_systems_rest_bad_request(request_type=db_system.ListDbSystemsRequest): +def test_list_goldengate_connection_assignments_rest_bad_request( + request_type=goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest, +): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) @@ -50431,17 +70907,17 @@ def test_list_db_systems_rest_bad_request(request_type=db_system.ListDbSystemsRe response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_db_systems(request) + client.list_goldengate_connection_assignments(request) @pytest.mark.parametrize( "request_type", [ - db_system.ListDbSystemsRequest, + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest, dict, ], ) -def test_list_db_systems_rest_call_success(request_type): +def test_list_goldengate_connection_assignments_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) @@ -50453,8 +70929,9 @@ def test_list_db_systems_rest_call_success(request_type): # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = db_system.ListDbSystemsResponse( + return_value = goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse( next_page_token="next_page_token_value", + unreachable=["unreachable_value"], ) # Wrap the value into a proper Response obj @@ -50462,20 +70939,23 @@ def test_list_db_systems_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = db_system.ListDbSystemsResponse.pb(return_value) + return_value = goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse.pb( + return_value + ) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_db_systems(request) + response = client.list_goldengate_connection_assignments(request) # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListDbSystemsPager) + assert isinstance(response, pagers.ListGoldengateConnectionAssignmentsPager) assert response.next_page_token == "next_page_token_value" + assert response.unreachable == ["unreachable_value"] @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_db_systems_rest_interceptors(null_interceptor): +def test_list_goldengate_connection_assignments_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -50488,20 +70968,24 @@ def test_list_db_systems_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_list_db_systems" + transports.OracleDatabaseRestInterceptor, + "post_list_goldengate_connection_assignments", ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_list_db_systems_with_metadata", + "post_list_goldengate_connection_assignments_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_list_db_systems" + transports.OracleDatabaseRestInterceptor, + "pre_list_goldengate_connection_assignments", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = db_system.ListDbSystemsRequest.pb(db_system.ListDbSystemsRequest()) + pb_message = goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest.pb( + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest() + ) transcode.return_value = { "method": "post", "uri": "my_uri", @@ -50512,21 +70996,24 @@ def test_list_db_systems_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = db_system.ListDbSystemsResponse.to_json( - db_system.ListDbSystemsResponse() + return_value = goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse.to_json( + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse() ) req.return_value.content = return_value - request = db_system.ListDbSystemsRequest() + request = goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = db_system.ListDbSystemsResponse() - post_with_metadata.return_value = db_system.ListDbSystemsResponse(), metadata + post.return_value = goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse() + post_with_metadata.return_value = ( + goldengate_connection_assignment.ListGoldengateConnectionAssignmentsResponse(), + metadata, + ) - client.list_db_systems( + client.list_goldengate_connection_assignments( request, metadata=[ ("key", "val"), @@ -50539,12 +71026,16 @@ def test_list_db_systems_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_get_db_system_rest_bad_request(request_type=db_system.GetDbSystemRequest): +def test_get_goldengate_connection_assignment_rest_bad_request( + request_type=goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest, +): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"name": "projects/sample1/locations/sample2/dbSystems/sample3"} + request_init = { + "name": "projects/sample1/locations/sample2/goldengateConnectionAssignments/sample3" + } request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -50560,36 +71051,34 @@ def test_get_db_system_rest_bad_request(request_type=db_system.GetDbSystemReques response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.get_db_system(request) + client.get_goldengate_connection_assignment(request) @pytest.mark.parametrize( "request_type", [ - db_system.GetDbSystemRequest, + goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest, dict, ], ) -def test_get_db_system_rest_call_success(request_type): +def test_get_goldengate_connection_assignment_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"name": "projects/sample1/locations/sample2/dbSystems/sample3"} + request_init = { + "name": "projects/sample1/locations/sample2/goldengateConnectionAssignments/sample3" + } request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = db_system.DbSystem( + return_value = goldengate_connection_assignment.GoldengateConnectionAssignment( name="name_value", - gcp_oracle_zone="gcp_oracle_zone_value", - odb_network="odb_network_value", - odb_subnet="odb_subnet_value", - entitlement_id="entitlement_id_value", display_name="display_name_value", - oci_url="oci_url_value", + entitlement_id="entitlement_id_value", ) # Wrap the value into a proper Response obj @@ -50597,26 +71086,28 @@ def test_get_db_system_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = db_system.DbSystem.pb(return_value) + return_value = ( + goldengate_connection_assignment.GoldengateConnectionAssignment.pb( + return_value + ) + ) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.get_db_system(request) + response = client.get_goldengate_connection_assignment(request) # Establish that the response is the type that we expect. - assert isinstance(response, db_system.DbSystem) + assert isinstance( + response, goldengate_connection_assignment.GoldengateConnectionAssignment + ) assert response.name == "name_value" - assert response.gcp_oracle_zone == "gcp_oracle_zone_value" - assert response.odb_network == "odb_network_value" - assert response.odb_subnet == "odb_subnet_value" - assert response.entitlement_id == "entitlement_id_value" assert response.display_name == "display_name_value" - assert response.oci_url == "oci_url_value" + assert response.entitlement_id == "entitlement_id_value" @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_get_db_system_rest_interceptors(null_interceptor): +def test_get_goldengate_connection_assignment_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -50629,19 +71120,24 @@ def test_get_db_system_rest_interceptors(null_interceptor): mock.patch.object(type(client.transport._session), "request") as req, mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_get_db_system" + transports.OracleDatabaseRestInterceptor, + "post_get_goldengate_connection_assignment", ) as post, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_get_db_system_with_metadata" + transports.OracleDatabaseRestInterceptor, + "post_get_goldengate_connection_assignment_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_get_db_system" + transports.OracleDatabaseRestInterceptor, + "pre_get_goldengate_connection_assignment", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = db_system.GetDbSystemRequest.pb(db_system.GetDbSystemRequest()) + pb_message = goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest.pb( + goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest() + ) transcode.return_value = { "method": "post", "uri": "my_uri", @@ -50652,19 +71148,30 @@ def test_get_db_system_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = db_system.DbSystem.to_json(db_system.DbSystem()) + return_value = ( + goldengate_connection_assignment.GoldengateConnectionAssignment.to_json( + goldengate_connection_assignment.GoldengateConnectionAssignment() + ) + ) req.return_value.content = return_value - request = db_system.GetDbSystemRequest() + request = ( + goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest() + ) metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = db_system.DbSystem() - post_with_metadata.return_value = db_system.DbSystem(), metadata + post.return_value = ( + goldengate_connection_assignment.GoldengateConnectionAssignment() + ) + post_with_metadata.return_value = ( + goldengate_connection_assignment.GoldengateConnectionAssignment(), + metadata, + ) - client.get_db_system( + client.get_goldengate_connection_assignment( request, metadata=[ ("key", "val"), @@ -50677,8 +71184,8 @@ def test_get_db_system_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_create_db_system_rest_bad_request( - request_type=gco_db_system.CreateDbSystemRequest, +def test_create_goldengate_connection_assignment_rest_bad_request( + request_type=gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" @@ -50700,102 +71207,45 @@ def test_create_db_system_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.create_db_system(request) + client.create_goldengate_connection_assignment(request) @pytest.mark.parametrize( "request_type", [ - gco_db_system.CreateDbSystemRequest, + gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest, dict, ], ) -def test_create_db_system_rest_call_success(request_type): +def test_create_goldengate_connection_assignment_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding request_init = {"parent": "projects/sample1/locations/sample2"} - request_init["db_system"] = { + request_init["goldengate_connection_assignment"] = { "name": "name_value", "properties": { - "shape": "shape_value", - "compute_count": 1413, - "initial_data_storage_size_gb": 2937, - "database_edition": 1, - "license_model": 1, - "ssh_public_keys": ["ssh_public_keys_value1", "ssh_public_keys_value2"], - "hostname_prefix": "hostname_prefix_value", - "hostname": "hostname_value", - "private_ip": "private_ip_value", - "data_collection_options": { - "is_diagnostics_events_enabled": True, - "is_incident_logs_enabled": True, - }, - "time_zone": {"id": "id_value", "version": "version_value"}, - "lifecycle_state": 1, - "db_home": { - "display_name": "display_name_value", - "db_version": "db_version_value", - "database": { - "name": "name_value", - "db_name": "db_name_value", - "db_unique_name": "db_unique_name_value", - "admin_password": "admin_password_value", - "tde_wallet_password": "tde_wallet_password_value", - "character_set": "character_set_value", - "ncharacter_set": "ncharacter_set_value", - "oci_url": "oci_url_value", - "create_time": {"seconds": 751, "nanos": 543}, - "properties": { - "state": 1, - "db_version": "db_version_value", - "db_backup_config": { - "auto_backup_enabled": True, - "backup_destination_details": [{"type_": 1}], - "retention_period_days": 2250, - "backup_deletion_policy": 1, - "auto_full_backup_day": 1, - "auto_full_backup_window": 1, - "auto_incremental_backup_window": 1, - }, - "database_management_config": { - "management_state": 1, - "management_type": 1, - }, - }, - "database_id": "database_id_value", - "db_home_name": "db_home_name_value", - "gcp_oracle_zone": "gcp_oracle_zone_value", - "ops_insights_status": 1, - }, - "is_unified_auditing_enabled": True, - }, "ocid": "ocid_value", - "memory_size_gb": 1499, - "compute_model": 1, - "data_storage_size_gb": 2096, - "reco_storage_size_gb": 2111, - "domain": "domain_value", - "node_count": 1070, - "db_system_options": {"storage_management": 1}, + "goldengate_connection": "goldengate_connection_value", + "goldengate_deployment": "goldengate_deployment_value", + "alias": "alias_value", + "state": 1, }, - "gcp_oracle_zone": "gcp_oracle_zone_value", + "create_time": {"seconds": 751, "nanos": 543}, "labels": {}, - "odb_network": "odb_network_value", - "odb_subnet": "odb_subnet_value", - "entitlement_id": "entitlement_id_value", "display_name": "display_name_value", - "create_time": {}, - "oci_url": "oci_url_value", + "entitlement_id": "entitlement_id_value", } # The version of a generated dependency at test runtime may differ from the version used during generation. # Delete any fields which are not present in the current runtime dependency # See https://github.com/googleapis/gapic-generator-python/issues/1748 # Determine if the message type is proto-plus or protobuf - test_field = gco_db_system.CreateDbSystemRequest.meta.fields["db_system"] + test_field = gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest.meta.fields[ + "goldengate_connection_assignment" + ] def get_message_fields(field): # Given a field which is a message (composite type), return a list with @@ -50823,7 +71273,9 @@ def get_message_fields(field): # For each item in the sample request, create a list of sub fields which are not present at runtime # Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime - for field, value in request_init["db_system"].items(): # pragma: NO COVER + for field, value in request_init[ + "goldengate_connection_assignment" + ].items(): # pragma: NO COVER result = None is_repeated = False # For repeated fields @@ -50853,10 +71305,14 @@ def get_message_fields(field): subfield = subfield_to_delete.get("subfield") if subfield: if field_repeated: - for i in range(0, len(request_init["db_system"][field])): - del request_init["db_system"][field][i][subfield] + for i in range( + 0, len(request_init["goldengate_connection_assignment"][field]) + ): + del request_init["goldengate_connection_assignment"][field][i][ + subfield + ] else: - del request_init["db_system"][field][subfield] + del request_init["goldengate_connection_assignment"][field][subfield] request = request_type(**request_init) # Mock the http request call within the method and fake a response. @@ -50871,14 +71327,14 @@ def get_message_fields(field): response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.create_db_system(request) + response = client.create_goldengate_connection_assignment(request) # Establish that the response is the type that we expect. json_return_value = json_format.MessageToJson(return_value) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_create_db_system_rest_interceptors(null_interceptor): +def test_create_goldengate_connection_assignment_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -50892,21 +71348,23 @@ def test_create_db_system_rest_interceptors(null_interceptor): mock.patch.object(path_template, "transcode") as transcode, mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_create_db_system" + transports.OracleDatabaseRestInterceptor, + "post_create_goldengate_connection_assignment", ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_create_db_system_with_metadata", + "post_create_goldengate_connection_assignment_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_create_db_system" + transports.OracleDatabaseRestInterceptor, + "pre_create_goldengate_connection_assignment", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = gco_db_system.CreateDbSystemRequest.pb( - gco_db_system.CreateDbSystemRequest() + pb_message = gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest.pb( + gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest() ) transcode.return_value = { "method": "post", @@ -50921,7 +71379,7 @@ def test_create_db_system_rest_interceptors(null_interceptor): return_value = json_format.MessageToJson(operations_pb2.Operation()) req.return_value.content = return_value - request = gco_db_system.CreateDbSystemRequest() + request = gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), @@ -50930,7 +71388,7 @@ def test_create_db_system_rest_interceptors(null_interceptor): post.return_value = operations_pb2.Operation() post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.create_db_system( + client.create_goldengate_connection_assignment( request, metadata=[ ("key", "val"), @@ -50943,14 +71401,16 @@ def test_create_db_system_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_delete_db_system_rest_bad_request( - request_type=db_system.DeleteDbSystemRequest, +def test_delete_goldengate_connection_assignment_rest_bad_request( + request_type=goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"name": "projects/sample1/locations/sample2/dbSystems/sample3"} + request_init = { + "name": "projects/sample1/locations/sample2/goldengateConnectionAssignments/sample3" + } request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -50966,23 +71426,25 @@ def test_delete_db_system_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.delete_db_system(request) + client.delete_goldengate_connection_assignment(request) @pytest.mark.parametrize( "request_type", [ - db_system.DeleteDbSystemRequest, + goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest, dict, ], ) -def test_delete_db_system_rest_call_success(request_type): +def test_delete_goldengate_connection_assignment_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"name": "projects/sample1/locations/sample2/dbSystems/sample3"} + request_init = { + "name": "projects/sample1/locations/sample2/goldengateConnectionAssignments/sample3" + } request = request_type(**request_init) # Mock the http request call within the method and fake a response. @@ -50997,14 +71459,14 @@ def test_delete_db_system_rest_call_success(request_type): response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.delete_db_system(request) + response = client.delete_goldengate_connection_assignment(request) # Establish that the response is the type that we expect. json_return_value = json_format.MessageToJson(return_value) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_delete_db_system_rest_interceptors(null_interceptor): +def test_delete_goldengate_connection_assignment_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -51018,21 +71480,23 @@ def test_delete_db_system_rest_interceptors(null_interceptor): mock.patch.object(path_template, "transcode") as transcode, mock.patch.object(operation.Operation, "_set_result_from_operation"), mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_delete_db_system" + transports.OracleDatabaseRestInterceptor, + "post_delete_goldengate_connection_assignment", ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_delete_db_system_with_metadata", + "post_delete_goldengate_connection_assignment_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_delete_db_system" + transports.OracleDatabaseRestInterceptor, + "pre_delete_goldengate_connection_assignment", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = db_system.DeleteDbSystemRequest.pb( - db_system.DeleteDbSystemRequest() + pb_message = goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest.pb( + goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest() ) transcode.return_value = { "method": "post", @@ -51047,7 +71511,7 @@ def test_delete_db_system_rest_interceptors(null_interceptor): return_value = json_format.MessageToJson(operations_pb2.Operation()) req.return_value.content = return_value - request = db_system.DeleteDbSystemRequest() + request = goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest() metadata = [ ("key", "val"), ("cephalopod", "squid"), @@ -51056,140 +71520,7 @@ def test_delete_db_system_rest_interceptors(null_interceptor): post.return_value = operations_pb2.Operation() post_with_metadata.return_value = operations_pb2.Operation(), metadata - client.delete_db_system( - request, - metadata=[ - ("key", "val"), - ("cephalopod", "squid"), - ], - ) - - pre.assert_called_once() - post.assert_called_once() - post_with_metadata.assert_called_once() - - -def test_list_db_versions_rest_bad_request( - request_type=db_version.ListDbVersionsRequest, -): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), transport="rest" - ) - # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2"} - request = request_type(**request_init) - - # Mock the http request call within the method and fake a BadRequest error. - with ( - mock.patch.object(Session, "request") as req, - pytest.raises(core_exceptions.BadRequest), - ): - # Wrap the value into a proper Response obj - response_value = mock.Mock() - json_return_value = "" - response_value.json = mock.Mock(return_value={}) - response_value.status_code = 400 - response_value.request = mock.Mock() - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_db_versions(request) - - -@pytest.mark.parametrize( - "request_type", - [ - db_version.ListDbVersionsRequest, - dict, - ], -) -def test_list_db_versions_rest_call_success(request_type): - client = OracleDatabaseClient( - credentials=ga_credentials.AnonymousCredentials(), transport="rest" - ) - - # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2"} - request = request_type(**request_init) - - # Mock the http request call within the method and fake a response. - with mock.patch.object(type(client.transport._session), "request") as req: - # Designate an appropriate value for the returned response. - return_value = db_version.ListDbVersionsResponse( - next_page_token="next_page_token_value", - ) - - # Wrap the value into a proper Response obj - response_value = mock.Mock() - response_value.status_code = 200 - - # Convert return value to protobuf type - return_value = db_version.ListDbVersionsResponse.pb(return_value) - json_return_value = json_format.MessageToJson(return_value) - response_value.content = json_return_value.encode("UTF-8") - req.return_value = response_value - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_db_versions(request) - - # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListDbVersionsPager) - assert response.next_page_token == "next_page_token_value" - - -@pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_db_versions_rest_interceptors(null_interceptor): - transport = transports.OracleDatabaseRestTransport( - credentials=ga_credentials.AnonymousCredentials(), - interceptor=None - if null_interceptor - else transports.OracleDatabaseRestInterceptor(), - ) - client = OracleDatabaseClient(transport=transport) - - with ( - mock.patch.object(type(client.transport._session), "request") as req, - mock.patch.object(path_template, "transcode") as transcode, - mock.patch.object( - transports.OracleDatabaseRestInterceptor, "post_list_db_versions" - ) as post, - mock.patch.object( - transports.OracleDatabaseRestInterceptor, - "post_list_db_versions_with_metadata", - ) as post_with_metadata, - mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_list_db_versions" - ) as pre, - ): - pre.assert_not_called() - post.assert_not_called() - post_with_metadata.assert_not_called() - pb_message = db_version.ListDbVersionsRequest.pb( - db_version.ListDbVersionsRequest() - ) - transcode.return_value = { - "method": "post", - "uri": "my_uri", - "body": pb_message, - "query_params": pb_message, - } - - req.return_value = mock.Mock() - req.return_value.status_code = 200 - req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = db_version.ListDbVersionsResponse.to_json( - db_version.ListDbVersionsResponse() - ) - req.return_value.content = return_value - - request = db_version.ListDbVersionsRequest() - metadata = [ - ("key", "val"), - ("cephalopod", "squid"), - ] - pre.return_value = request, metadata - post.return_value = db_version.ListDbVersionsResponse() - post_with_metadata.return_value = db_version.ListDbVersionsResponse(), metadata - - client.list_db_versions( + client.delete_goldengate_connection_assignment( request, metadata=[ ("key", "val"), @@ -51202,14 +71533,16 @@ def test_list_db_versions_rest_interceptors(null_interceptor): post_with_metadata.assert_called_once() -def test_list_database_character_sets_rest_bad_request( - request_type=database_character_set.ListDatabaseCharacterSetsRequest, +def test_test_goldengate_connection_assignment_rest_bad_request( + request_type=goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest, ): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2"} + request_init = { + "name": "projects/sample1/locations/sample2/goldengateConnectionAssignments/sample3" + } request = request_type(**request_init) # Mock the http request call within the method and fake a BadRequest error. @@ -51225,30 +71558,32 @@ def test_list_database_character_sets_rest_bad_request( response_value.request = mock.Mock() req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - client.list_database_character_sets(request) + client.test_goldengate_connection_assignment(request) @pytest.mark.parametrize( "request_type", [ - database_character_set.ListDatabaseCharacterSetsRequest, + goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest, dict, ], ) -def test_list_database_character_sets_rest_call_success(request_type): +def test_test_goldengate_connection_assignment_rest_call_success(request_type): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), transport="rest" ) # send a request that will satisfy transcoding - request_init = {"parent": "projects/sample1/locations/sample2"} + request_init = { + "name": "projects/sample1/locations/sample2/goldengateConnectionAssignments/sample3" + } request = request_type(**request_init) # Mock the http request call within the method and fake a response. with mock.patch.object(type(client.transport._session), "request") as req: # Designate an appropriate value for the returned response. - return_value = database_character_set.ListDatabaseCharacterSetsResponse( - next_page_token="next_page_token_value", + return_value = goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse( + result_type=goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse.ResultType.SUCCEEDED, ) # Wrap the value into a proper Response obj @@ -51256,22 +71591,28 @@ def test_list_database_character_sets_rest_call_success(request_type): response_value.status_code = 200 # Convert return value to protobuf type - return_value = database_character_set.ListDatabaseCharacterSetsResponse.pb( + return_value = goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse.pb( return_value ) json_return_value = json_format.MessageToJson(return_value) response_value.content = json_return_value.encode("UTF-8") req.return_value = response_value req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - response = client.list_database_character_sets(request) + response = client.test_goldengate_connection_assignment(request) # Establish that the response is the type that we expect. - assert isinstance(response, pagers.ListDatabaseCharacterSetsPager) - assert response.next_page_token == "next_page_token_value" + assert isinstance( + response, + goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse, + ) + assert ( + response.result_type + == goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse.ResultType.SUCCEEDED + ) @pytest.mark.parametrize("null_interceptor", [True, False]) -def test_list_database_character_sets_rest_interceptors(null_interceptor): +def test_test_goldengate_connection_assignment_rest_interceptors(null_interceptor): transport = transports.OracleDatabaseRestTransport( credentials=ga_credentials.AnonymousCredentials(), interceptor=None @@ -51285,21 +71626,22 @@ def test_list_database_character_sets_rest_interceptors(null_interceptor): mock.patch.object(path_template, "transcode") as transcode, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_list_database_character_sets", + "post_test_goldengate_connection_assignment", ) as post, mock.patch.object( transports.OracleDatabaseRestInterceptor, - "post_list_database_character_sets_with_metadata", + "post_test_goldengate_connection_assignment_with_metadata", ) as post_with_metadata, mock.patch.object( - transports.OracleDatabaseRestInterceptor, "pre_list_database_character_sets" + transports.OracleDatabaseRestInterceptor, + "pre_test_goldengate_connection_assignment", ) as pre, ): pre.assert_not_called() post.assert_not_called() post_with_metadata.assert_not_called() - pb_message = database_character_set.ListDatabaseCharacterSetsRequest.pb( - database_character_set.ListDatabaseCharacterSetsRequest() + pb_message = goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest.pb( + goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest() ) transcode.return_value = { "method": "post", @@ -51311,24 +71653,26 @@ def test_list_database_character_sets_rest_interceptors(null_interceptor): req.return_value = mock.Mock() req.return_value.status_code = 200 req.return_value.headers = {"header-1": "value-1", "header-2": "value-2"} - return_value = database_character_set.ListDatabaseCharacterSetsResponse.to_json( - database_character_set.ListDatabaseCharacterSetsResponse() + return_value = goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse.to_json( + goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse() ) req.return_value.content = return_value - request = database_character_set.ListDatabaseCharacterSetsRequest() + request = ( + goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest() + ) metadata = [ ("key", "val"), ("cephalopod", "squid"), ] pre.return_value = request, metadata - post.return_value = database_character_set.ListDatabaseCharacterSetsResponse() + post.return_value = goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse() post_with_metadata.return_value = ( - database_character_set.ListDatabaseCharacterSetsResponse(), + goldengate_connection_assignment.TestGoldengateConnectionAssignmentResponse(), metadata, ) - client.list_database_character_sets( + client.test_goldengate_connection_assignment( request, metadata=[ ("key", "val"), @@ -52878,6 +73222,388 @@ def test_delete_db_system_empty_call_rest(): assert args[0] == request_msg +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_goldengate_deployments_empty_call_rest(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployments), "__call__" + ) as call: + client.list_goldengate_deployments(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment.ListGoldengateDeploymentsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_get_goldengate_deployment_empty_call_rest(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment), "__call__" + ) as call: + client.get_goldengate_deployment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment.GetGoldengateDeploymentRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_create_goldengate_deployment_empty_call_rest(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_deployment), "__call__" + ) as call: + client.create_goldengate_deployment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = gco_goldengate_deployment.CreateGoldengateDeploymentRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_delete_goldengate_deployment_empty_call_rest(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_deployment), "__call__" + ) as call: + client.delete_goldengate_deployment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment.DeleteGoldengateDeploymentRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_stop_goldengate_deployment_empty_call_rest(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.stop_goldengate_deployment), "__call__" + ) as call: + client.stop_goldengate_deployment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment.StopGoldengateDeploymentRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_start_goldengate_deployment_empty_call_rest(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.start_goldengate_deployment), "__call__" + ) as call: + client.start_goldengate_deployment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment.StartGoldengateDeploymentRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_goldengate_connections_empty_call_rest(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connections), "__call__" + ) as call: + client.list_goldengate_connections(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_connection.ListGoldengateConnectionsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_get_goldengate_connection_empty_call_rest(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection), "__call__" + ) as call: + client.get_goldengate_connection(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_connection.GetGoldengateConnectionRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_create_goldengate_connection_empty_call_rest(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_connection), "__call__" + ) as call: + client.create_goldengate_connection(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = gco_goldengate_connection.CreateGoldengateConnectionRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_delete_goldengate_connection_empty_call_rest(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_connection), "__call__" + ) as call: + client.delete_goldengate_connection(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_connection.DeleteGoldengateConnectionRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_get_goldengate_deployment_version_empty_call_rest(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_version), "__call__" + ) as call: + client.get_goldengate_deployment_version(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = ( + goldengate_deployment_version.GetGoldengateDeploymentVersionRequest() + ) + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_goldengate_deployment_versions_empty_call_rest(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_versions), "__call__" + ) as call: + client.list_goldengate_deployment_versions(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = ( + goldengate_deployment_version.ListGoldengateDeploymentVersionsRequest() + ) + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_get_goldengate_deployment_type_empty_call_rest(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_type), "__call__" + ) as call: + client.get_goldengate_deployment_type(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment_type.GetGoldengateDeploymentTypeRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_goldengate_deployment_types_empty_call_rest(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_types), "__call__" + ) as call: + client.list_goldengate_deployment_types(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment_type.ListGoldengateDeploymentTypesRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_get_goldengate_deployment_environment_empty_call_rest(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_deployment_environment), "__call__" + ) as call: + client.get_goldengate_deployment_environment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment_environment.GetGoldengateDeploymentEnvironmentRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_goldengate_deployment_environments_empty_call_rest(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_deployment_environments), "__call__" + ) as call: + client.list_goldengate_deployment_environments(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_deployment_environment.ListGoldengateDeploymentEnvironmentsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_get_goldengate_connection_type_empty_call_rest(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection_type), "__call__" + ) as call: + client.get_goldengate_connection_type(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_connection_type.GetGoldengateConnectionTypeRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_goldengate_connection_types_empty_call_rest(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_types), "__call__" + ) as call: + client.list_goldengate_connection_types(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_connection_type.ListGoldengateConnectionTypesRequest() + assert args[0] == request_msg + + # This test is a coverage failsafe to make sure that totally empty calls, # i.e. request == None and no flattened fields passed, work. def test_list_db_versions_empty_call_rest(): @@ -52918,6 +73644,115 @@ def test_list_database_character_sets_empty_call_rest(): assert args[0] == request_msg +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_list_goldengate_connection_assignments_empty_call_rest(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.list_goldengate_connection_assignments), "__call__" + ) as call: + client.list_goldengate_connection_assignments(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_connection_assignment.ListGoldengateConnectionAssignmentsRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_get_goldengate_connection_assignment_empty_call_rest(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.get_goldengate_connection_assignment), "__call__" + ) as call: + client.get_goldengate_connection_assignment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = ( + goldengate_connection_assignment.GetGoldengateConnectionAssignmentRequest() + ) + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_create_goldengate_connection_assignment_empty_call_rest(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.create_goldengate_connection_assignment), "__call__" + ) as call: + client.create_goldengate_connection_assignment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = gco_goldengate_connection_assignment.CreateGoldengateConnectionAssignmentRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_delete_goldengate_connection_assignment_empty_call_rest(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.delete_goldengate_connection_assignment), "__call__" + ) as call: + client.delete_goldengate_connection_assignment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = goldengate_connection_assignment.DeleteGoldengateConnectionAssignmentRequest() + assert args[0] == request_msg + + +# This test is a coverage failsafe to make sure that totally empty calls, +# i.e. request == None and no flattened fields passed, work. +def test_test_goldengate_connection_assignment_empty_call_rest(): + client = OracleDatabaseClient( + credentials=ga_credentials.AnonymousCredentials(), + transport="rest", + ) + + # Mock the actual call, and fake the request. + with mock.patch.object( + type(client.transport.test_goldengate_connection_assignment), "__call__" + ) as call: + client.test_goldengate_connection_assignment(request=None) + + # Establish that the underlying stub method was called. + call.assert_called() + _, args, _ = call.mock_calls[0] + request_msg = ( + goldengate_connection_assignment.TestGoldengateConnectionAssignmentRequest() + ) + assert args[0] == request_msg + + def test_oracle_database_rest_lro_client(): client = OracleDatabaseClient( credentials=ga_credentials.AnonymousCredentials(), @@ -53024,8 +73859,31 @@ def test_oracle_database_base_transport(): "get_db_system", "create_db_system", "delete_db_system", + "list_goldengate_deployments", + "get_goldengate_deployment", + "create_goldengate_deployment", + "delete_goldengate_deployment", + "stop_goldengate_deployment", + "start_goldengate_deployment", + "list_goldengate_connections", + "get_goldengate_connection", + "create_goldengate_connection", + "delete_goldengate_connection", + "get_goldengate_deployment_version", + "list_goldengate_deployment_versions", + "get_goldengate_deployment_type", + "list_goldengate_deployment_types", + "get_goldengate_deployment_environment", + "list_goldengate_deployment_environments", + "get_goldengate_connection_type", + "list_goldengate_connection_types", "list_db_versions", "list_database_character_sets", + "list_goldengate_connection_assignments", + "get_goldengate_connection_assignment", + "create_goldengate_connection_assignment", + "delete_goldengate_connection_assignment", + "test_goldengate_connection_assignment", "get_location", "list_locations", "get_operation", @@ -53470,12 +74328,81 @@ def test_oracle_database_client_transport_session_collision(transport_name): session1 = client1.transport.delete_db_system._session session2 = client2.transport.delete_db_system._session assert session1 != session2 + session1 = client1.transport.list_goldengate_deployments._session + session2 = client2.transport.list_goldengate_deployments._session + assert session1 != session2 + session1 = client1.transport.get_goldengate_deployment._session + session2 = client2.transport.get_goldengate_deployment._session + assert session1 != session2 + session1 = client1.transport.create_goldengate_deployment._session + session2 = client2.transport.create_goldengate_deployment._session + assert session1 != session2 + session1 = client1.transport.delete_goldengate_deployment._session + session2 = client2.transport.delete_goldengate_deployment._session + assert session1 != session2 + session1 = client1.transport.stop_goldengate_deployment._session + session2 = client2.transport.stop_goldengate_deployment._session + assert session1 != session2 + session1 = client1.transport.start_goldengate_deployment._session + session2 = client2.transport.start_goldengate_deployment._session + assert session1 != session2 + session1 = client1.transport.list_goldengate_connections._session + session2 = client2.transport.list_goldengate_connections._session + assert session1 != session2 + session1 = client1.transport.get_goldengate_connection._session + session2 = client2.transport.get_goldengate_connection._session + assert session1 != session2 + session1 = client1.transport.create_goldengate_connection._session + session2 = client2.transport.create_goldengate_connection._session + assert session1 != session2 + session1 = client1.transport.delete_goldengate_connection._session + session2 = client2.transport.delete_goldengate_connection._session + assert session1 != session2 + session1 = client1.transport.get_goldengate_deployment_version._session + session2 = client2.transport.get_goldengate_deployment_version._session + assert session1 != session2 + session1 = client1.transport.list_goldengate_deployment_versions._session + session2 = client2.transport.list_goldengate_deployment_versions._session + assert session1 != session2 + session1 = client1.transport.get_goldengate_deployment_type._session + session2 = client2.transport.get_goldengate_deployment_type._session + assert session1 != session2 + session1 = client1.transport.list_goldengate_deployment_types._session + session2 = client2.transport.list_goldengate_deployment_types._session + assert session1 != session2 + session1 = client1.transport.get_goldengate_deployment_environment._session + session2 = client2.transport.get_goldengate_deployment_environment._session + assert session1 != session2 + session1 = client1.transport.list_goldengate_deployment_environments._session + session2 = client2.transport.list_goldengate_deployment_environments._session + assert session1 != session2 + session1 = client1.transport.get_goldengate_connection_type._session + session2 = client2.transport.get_goldengate_connection_type._session + assert session1 != session2 + session1 = client1.transport.list_goldengate_connection_types._session + session2 = client2.transport.list_goldengate_connection_types._session + assert session1 != session2 session1 = client1.transport.list_db_versions._session session2 = client2.transport.list_db_versions._session assert session1 != session2 session1 = client1.transport.list_database_character_sets._session session2 = client2.transport.list_database_character_sets._session assert session1 != session2 + session1 = client1.transport.list_goldengate_connection_assignments._session + session2 = client2.transport.list_goldengate_connection_assignments._session + assert session1 != session2 + session1 = client1.transport.get_goldengate_connection_assignment._session + session2 = client2.transport.get_goldengate_connection_assignment._session + assert session1 != session2 + session1 = client1.transport.create_goldengate_connection_assignment._session + session2 = client2.transport.create_goldengate_connection_assignment._session + assert session1 != session2 + session1 = client1.transport.delete_goldengate_connection_assignment._session + session2 = client2.transport.delete_goldengate_connection_assignment._session + assert session1 != session2 + session1 = client1.transport.test_goldengate_connection_assignment._session + session2 = client2.transport.test_goldengate_connection_assignment._session + assert session1 != session2 def test_oracle_database_grpc_transport_channel(): @@ -54172,11 +75099,207 @@ def test_parse_gi_version_path(): assert expected == actual -def test_minor_version_path(): +def test_goldengate_connection_path(): project = "squid" location = "clam" - gi_version = "whelk" - minor_version = "octopus" + goldengate_connection = "whelk" + expected = "projects/{project}/locations/{location}/goldengateConnections/{goldengate_connection}".format( + project=project, + location=location, + goldengate_connection=goldengate_connection, + ) + actual = OracleDatabaseClient.goldengate_connection_path( + project, location, goldengate_connection + ) + assert expected == actual + + +def test_parse_goldengate_connection_path(): + expected = { + "project": "octopus", + "location": "oyster", + "goldengate_connection": "nudibranch", + } + path = OracleDatabaseClient.goldengate_connection_path(**expected) + + # Check that the path construction is reversible. + actual = OracleDatabaseClient.parse_goldengate_connection_path(path) + assert expected == actual + + +def test_goldengate_connection_assignment_path(): + project = "cuttlefish" + location = "mussel" + goldengate_connection_assignment = "winkle" + expected = "projects/{project}/locations/{location}/goldengateConnectionAssignments/{goldengate_connection_assignment}".format( + project=project, + location=location, + goldengate_connection_assignment=goldengate_connection_assignment, + ) + actual = OracleDatabaseClient.goldengate_connection_assignment_path( + project, location, goldengate_connection_assignment + ) + assert expected == actual + + +def test_parse_goldengate_connection_assignment_path(): + expected = { + "project": "nautilus", + "location": "scallop", + "goldengate_connection_assignment": "abalone", + } + path = OracleDatabaseClient.goldengate_connection_assignment_path(**expected) + + # Check that the path construction is reversible. + actual = OracleDatabaseClient.parse_goldengate_connection_assignment_path(path) + assert expected == actual + + +def test_goldengate_connection_type_path(): + project = "squid" + location = "clam" + goldengate_connection_type = "whelk" + expected = "projects/{project}/locations/{location}/goldengateConnectionTypes/{goldengate_connection_type}".format( + project=project, + location=location, + goldengate_connection_type=goldengate_connection_type, + ) + actual = OracleDatabaseClient.goldengate_connection_type_path( + project, location, goldengate_connection_type + ) + assert expected == actual + + +def test_parse_goldengate_connection_type_path(): + expected = { + "project": "octopus", + "location": "oyster", + "goldengate_connection_type": "nudibranch", + } + path = OracleDatabaseClient.goldengate_connection_type_path(**expected) + + # Check that the path construction is reversible. + actual = OracleDatabaseClient.parse_goldengate_connection_type_path(path) + assert expected == actual + + +def test_goldengate_deployment_path(): + project = "cuttlefish" + location = "mussel" + goldengate_deployment = "winkle" + expected = "projects/{project}/locations/{location}/goldengateDeployments/{goldengate_deployment}".format( + project=project, + location=location, + goldengate_deployment=goldengate_deployment, + ) + actual = OracleDatabaseClient.goldengate_deployment_path( + project, location, goldengate_deployment + ) + assert expected == actual + + +def test_parse_goldengate_deployment_path(): + expected = { + "project": "nautilus", + "location": "scallop", + "goldengate_deployment": "abalone", + } + path = OracleDatabaseClient.goldengate_deployment_path(**expected) + + # Check that the path construction is reversible. + actual = OracleDatabaseClient.parse_goldengate_deployment_path(path) + assert expected == actual + + +def test_goldengate_deployment_environment_path(): + project = "squid" + location = "clam" + goldengate_deployment_environment = "whelk" + expected = "projects/{project}/locations/{location}/goldengateDeploymentEnvironments/{goldengate_deployment_environment}".format( + project=project, + location=location, + goldengate_deployment_environment=goldengate_deployment_environment, + ) + actual = OracleDatabaseClient.goldengate_deployment_environment_path( + project, location, goldengate_deployment_environment + ) + assert expected == actual + + +def test_parse_goldengate_deployment_environment_path(): + expected = { + "project": "octopus", + "location": "oyster", + "goldengate_deployment_environment": "nudibranch", + } + path = OracleDatabaseClient.goldengate_deployment_environment_path(**expected) + + # Check that the path construction is reversible. + actual = OracleDatabaseClient.parse_goldengate_deployment_environment_path(path) + assert expected == actual + + +def test_goldengate_deployment_type_path(): + project = "cuttlefish" + location = "mussel" + goldengate_deployment_type = "winkle" + expected = "projects/{project}/locations/{location}/goldengateDeploymentTypes/{goldengate_deployment_type}".format( + project=project, + location=location, + goldengate_deployment_type=goldengate_deployment_type, + ) + actual = OracleDatabaseClient.goldengate_deployment_type_path( + project, location, goldengate_deployment_type + ) + assert expected == actual + + +def test_parse_goldengate_deployment_type_path(): + expected = { + "project": "nautilus", + "location": "scallop", + "goldengate_deployment_type": "abalone", + } + path = OracleDatabaseClient.goldengate_deployment_type_path(**expected) + + # Check that the path construction is reversible. + actual = OracleDatabaseClient.parse_goldengate_deployment_type_path(path) + assert expected == actual + + +def test_goldengate_deployment_version_path(): + project = "squid" + location = "clam" + goldengate_deployment_version = "whelk" + expected = "projects/{project}/locations/{location}/goldengateDeploymentVersions/{goldengate_deployment_version}".format( + project=project, + location=location, + goldengate_deployment_version=goldengate_deployment_version, + ) + actual = OracleDatabaseClient.goldengate_deployment_version_path( + project, location, goldengate_deployment_version + ) + assert expected == actual + + +def test_parse_goldengate_deployment_version_path(): + expected = { + "project": "octopus", + "location": "oyster", + "goldengate_deployment_version": "nudibranch", + } + path = OracleDatabaseClient.goldengate_deployment_version_path(**expected) + + # Check that the path construction is reversible. + actual = OracleDatabaseClient.parse_goldengate_deployment_version_path(path) + assert expected == actual + + +def test_minor_version_path(): + project = "cuttlefish" + location = "mussel" + gi_version = "winkle" + minor_version = "nautilus" expected = "projects/{project}/locations/{location}/giVersions/{gi_version}/minorVersions/{minor_version}".format( project=project, location=location, @@ -54191,10 +75314,10 @@ def test_minor_version_path(): def test_parse_minor_version_path(): expected = { - "project": "oyster", - "location": "nudibranch", - "gi_version": "cuttlefish", - "minor_version": "mussel", + "project": "scallop", + "location": "abalone", + "gi_version": "squid", + "minor_version": "clam", } path = OracleDatabaseClient.minor_version_path(**expected) @@ -54204,8 +75327,8 @@ def test_parse_minor_version_path(): def test_network_path(): - project = "winkle" - network = "nautilus" + project = "whelk" + network = "octopus" expected = "projects/{project}/global/networks/{network}".format( project=project, network=network, @@ -54216,8 +75339,8 @@ def test_network_path(): def test_parse_network_path(): expected = { - "project": "scallop", - "network": "abalone", + "project": "oyster", + "network": "nudibranch", } path = OracleDatabaseClient.network_path(**expected) @@ -54227,9 +75350,9 @@ def test_parse_network_path(): def test_odb_network_path(): - project = "squid" - location = "clam" - odb_network = "whelk" + project = "cuttlefish" + location = "mussel" + odb_network = "winkle" expected = ( "projects/{project}/locations/{location}/odbNetworks/{odb_network}".format( project=project, @@ -54243,9 +75366,9 @@ def test_odb_network_path(): def test_parse_odb_network_path(): expected = { - "project": "octopus", - "location": "oyster", - "odb_network": "nudibranch", + "project": "nautilus", + "location": "scallop", + "odb_network": "abalone", } path = OracleDatabaseClient.odb_network_path(**expected) @@ -54255,10 +75378,10 @@ def test_parse_odb_network_path(): def test_odb_subnet_path(): - project = "cuttlefish" - location = "mussel" - odb_network = "winkle" - odb_subnet = "nautilus" + project = "squid" + location = "clam" + odb_network = "whelk" + odb_subnet = "octopus" expected = "projects/{project}/locations/{location}/odbNetworks/{odb_network}/odbSubnets/{odb_subnet}".format( project=project, location=location, @@ -54273,10 +75396,10 @@ def test_odb_subnet_path(): def test_parse_odb_subnet_path(): expected = { - "project": "scallop", - "location": "abalone", - "odb_network": "squid", - "odb_subnet": "clam", + "project": "oyster", + "location": "nudibranch", + "odb_network": "cuttlefish", + "odb_subnet": "mussel", } path = OracleDatabaseClient.odb_subnet_path(**expected) @@ -54286,9 +75409,9 @@ def test_parse_odb_subnet_path(): def test_pluggable_database_path(): - project = "whelk" - location = "octopus" - pluggable_database = "oyster" + project = "winkle" + location = "nautilus" + pluggable_database = "scallop" expected = "projects/{project}/locations/{location}/pluggableDatabases/{pluggable_database}".format( project=project, location=location, @@ -54302,9 +75425,9 @@ def test_pluggable_database_path(): def test_parse_pluggable_database_path(): expected = { - "project": "nudibranch", - "location": "cuttlefish", - "pluggable_database": "mussel", + "project": "abalone", + "location": "squid", + "pluggable_database": "clam", } path = OracleDatabaseClient.pluggable_database_path(**expected) @@ -54313,6 +75436,32 @@ def test_parse_pluggable_database_path(): assert expected == actual +def test_secret_version_path(): + project = "whelk" + secret = "octopus" + secret_version = "oyster" + expected = "projects/{project}/secrets/{secret}/versions/{secret_version}".format( + project=project, + secret=secret, + secret_version=secret_version, + ) + actual = OracleDatabaseClient.secret_version_path(project, secret, secret_version) + assert expected == actual + + +def test_parse_secret_version_path(): + expected = { + "project": "nudibranch", + "secret": "cuttlefish", + "secret_version": "mussel", + } + path = OracleDatabaseClient.secret_version_path(**expected) + + # Check that the path construction is reversible. + actual = OracleDatabaseClient.parse_secret_version_path(path) + assert expected == actual + + def test_common_billing_account_path(): billing_account = "winkle" expected = "billingAccounts/{billing_account}".format( From 227e26a7d38125cb5d52944cc916b854b8425cc7 Mon Sep 17 00:00:00 2001 From: Sofia Leon Date: Wed, 10 Jun 2026 23:38:40 +0000 Subject: [PATCH 2/3] chore: revert firestore changes --- librarian.yaml | 1 + .../services/firestore/async_client.py | 4 -- .../firestore_v1/services/firestore/client.py | 4 -- .../services/firestore/transports/base.py | 1 + .../firestore/transports/grpc_asyncio.py | 1 + .../google/cloud/firestore_v1/types/common.py | 37 +------------------ .../cloud/firestore_v1/types/firestore.py | 12 ------ .../google/cloud/firestore_v1/types/query.py | 19 ++-------- 8 files changed, 9 insertions(+), 70 deletions(-) diff --git a/librarian.yaml b/librarian.yaml index 49401db8758e..90f6d50697ae 100644 --- a/librarian.yaml +++ b/librarian.yaml @@ -1152,6 +1152,7 @@ libraries: - docs/firestore_v1/transforms.rst - docs/firestore_v1/types.rst skip_release: true + skip_generate: true python: library_type: GAPIC_COMBO opt_args_by_api: diff --git a/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/async_client.py b/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/async_client.py index 18d00e1011f0..f2f639474fc3 100644 --- a/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/async_client.py +++ b/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/async_client.py @@ -1811,10 +1811,6 @@ async def sample_list_collection_ids(): For example: ``projects/my-project/databases/my-database/documents/chatrooms/my-chatroom`` - Use - ``projects/{project_id}/databases/{database_id}/documents`` - to list top-level collections. - This corresponds to the ``parent`` field on the ``request`` instance; if ``request`` is provided, this should not be set. diff --git a/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/client.py b/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/client.py index 163659f8d67e..c428d1168a41 100644 --- a/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/client.py +++ b/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/client.py @@ -2202,10 +2202,6 @@ def sample_list_collection_ids(): For example: ``projects/my-project/databases/my-database/documents/chatrooms/my-chatroom`` - Use - ``projects/{project_id}/databases/{database_id}/documents`` - to list top-level collections. - This corresponds to the ``parent`` field on the ``request`` instance; if ``request`` is provided, this should not be set. diff --git a/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/transports/base.py b/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/transports/base.py index ab03b0c7783c..5049fe63953e 100644 --- a/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/transports/base.py +++ b/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/transports/base.py @@ -303,6 +303,7 @@ def _prep_wrapped_messages(self, client_info): maximum=60.0, multiplier=1.3, predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, core_exceptions.InternalServerError, core_exceptions.ServiceUnavailable, ), diff --git a/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/transports/grpc_asyncio.py b/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/transports/grpc_asyncio.py index 89b3f3db90f6..de1e413ca8d2 100644 --- a/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/transports/grpc_asyncio.py +++ b/packages/google-cloud-firestore/google/cloud/firestore_v1/services/firestore/transports/grpc_asyncio.py @@ -999,6 +999,7 @@ def _prep_wrapped_messages(self, client_info): maximum=60.0, multiplier=1.3, predicate=retries.if_exception_type( + core_exceptions.DeadlineExceeded, core_exceptions.InternalServerError, core_exceptions.ServiceUnavailable, ), diff --git a/packages/google-cloud-firestore/google/cloud/firestore_v1/types/common.py b/packages/google-cloud-firestore/google/cloud/firestore_v1/types/common.py index b9c4b27f043d..d81f1099c8d8 100644 --- a/packages/google-cloud-firestore/google/cloud/firestore_v1/types/common.py +++ b/packages/google-cloud-firestore/google/cloud/firestore_v1/types/common.py @@ -111,54 +111,21 @@ class TransactionOptions(proto.Message): This field is a member of `oneof`_ ``mode``. """ - class ConcurrencyMode(proto.Enum): - r"""The type of concurrency control mode for transactions. - - Values: - CONCURRENCY_MODE_UNSPECIFIED (0): - Start the transaction with the database-level - default concurrency mode. - OPTIMISTIC (1): - Use optimistic concurrency control for the - new transaction. - PESSIMISTIC (2): - Use pessimistic concurrency control for the - new transaction. - """ - - CONCURRENCY_MODE_UNSPECIFIED = 0 - OPTIMISTIC = 1 - PESSIMISTIC = 2 - class ReadWrite(proto.Message): r"""Options for a transaction that can be used to read and write documents. + Firestore does not allow 3rd party auth requests to create + read-write. transactions. Attributes: retry_transaction (bytes): An optional transaction to retry. - concurrency_mode (google.cloud.firestore_v1.types.TransactionOptions.ConcurrencyMode): - Optional. The concurrency control mode to use - for this transaction. - A database is able to use different concurrency - modes for different transactions simultaneously. - - 3rd party auth requests are only allowed to - create optimistic read-write transactions and - must specify that here even if the - database-level setting is already configured to - optimistic. """ retry_transaction: bytes = proto.Field( proto.BYTES, number=1, ) - concurrency_mode: "TransactionOptions.ConcurrencyMode" = proto.Field( - proto.ENUM, - number=2, - enum="TransactionOptions.ConcurrencyMode", - ) class ReadOnly(proto.Message): r"""Options for a transaction that can only be used to read diff --git a/packages/google-cloud-firestore/google/cloud/firestore_v1/types/firestore.py b/packages/google-cloud-firestore/google/cloud/firestore_v1/types/firestore.py index 7c2f5aa935ec..04ab893831be 100644 --- a/packages/google-cloud-firestore/google/cloud/firestore_v1/types/firestore.py +++ b/packages/google-cloud-firestore/google/cloud/firestore_v1/types/firestore.py @@ -884,10 +884,6 @@ class ExecutePipelineRequest(proto.Message): minute timestamp within the past 7 days. This field is a member of `oneof`_ ``consistency_selector``. - auto_commit_transaction (bool): - Optional. Automatically commits the transaction after the - pipeline has been executed. Only permitted in combination - with ``transaction`` or ``new_transaction``. """ database: str = proto.Field( @@ -917,10 +913,6 @@ class ExecutePipelineRequest(proto.Message): oneof="consistency_selector", message=timestamp_pb2.Timestamp, ) - auto_commit_transaction: bool = proto.Field( - proto.BOOL, - number=9, - ) class ExecutePipelineResponse(proto.Message): @@ -1789,10 +1781,6 @@ class ListCollectionIdsRequest(proto.Message): ``projects/{project_id}/databases/{database_id}/documents/{document_path}``. For example: ``projects/my-project/databases/my-database/documents/chatrooms/my-chatroom`` - - Use - ``projects/{project_id}/databases/{database_id}/documents`` - to list top-level collections. page_size (int): The maximum number of results to return. page_token (str): diff --git a/packages/google-cloud-firestore/google/cloud/firestore_v1/types/query.py b/packages/google-cloud-firestore/google/cloud/firestore_v1/types/query.py index 74240d9c698d..927a4c54a1f2 100644 --- a/packages/google-cloud-firestore/google/cloud/firestore_v1/types/query.py +++ b/packages/google-cloud-firestore/google/cloud/firestore_v1/types/query.py @@ -60,13 +60,10 @@ class StructuredQuery(proto.Message): order_by (MutableSequence[google.cloud.firestore_v1.types.StructuredQuery.Order]): The order to apply to the query results. - Callers can provide a full ordering, a partial ordering, or - no ordering at all. While Firestore will always respect the - provided order, the behavior for queries without a full - ordering is different per database edition: - - In Standard edition, Firestore guarantees a stable ordering - through the following rules: + Firestore allows callers to provide a full ordering, a + partial ordering, or no ordering at all. In all cases, + Firestore guarantees a stable ordering through the following + rules: - The ``order_by`` is required to reference all fields used with an inequality filter. @@ -87,14 +84,6 @@ class StructuredQuery(proto.Message): ``WHERE a > 1 ORDER BY a ASC, __name__ ASC`` - ``WHERE __name__ > ... AND a > 1`` becomes ``WHERE __name__ > ... AND a > 1 ORDER BY a ASC, __name__ ASC`` - - In Enterprise edition, Firestore does not guarantee a stable - ordering. Instead it will pick the most efficient ordering - based on the indexes available at the time of query - execution. This will result in a different ordering for - queries that are otherwise identical. To ensure a stable - ordering, always include a unique field in the ``order_by`` - clause, such as ``__name__``. start_at (google.cloud.firestore_v1.types.Cursor): A potential prefix of a position in the result set to start the query at. From cbd2b0b240b7c659b039378e14cfe3a3b35ac74d Mon Sep 17 00:00:00 2001 From: Sofia Leon Date: Wed, 10 Jun 2026 23:42:47 +0000 Subject: [PATCH 3/3] run tidy --- librarian.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/librarian.yaml b/librarian.yaml index 90f6d50697ae..a2053658979b 100644 --- a/librarian.yaml +++ b/librarian.yaml @@ -1151,8 +1151,8 @@ libraries: - docs/firestore_v1/transaction.rst - docs/firestore_v1/transforms.rst - docs/firestore_v1/types.rst - skip_release: true skip_generate: true + skip_release: true python: library_type: GAPIC_COMBO opt_args_by_api: